DAN Agyei struck five minutes from time to complete yet another comeback for Oxford United at Shrewsbury Town.

The forward’s deflected effort secured a precious three points to keep the U’s in the Sky Bet League One play-off hunt, after they were 2-1 down with just over 20 minutes left.

Portsmouth’s win at AFC Wimbledon means seventh-placed United remain a point outside the top six going into the final day, but they have kept their challenge alive.

Elliot Lee’s third-minute opener put the U’s ahead, but Matthew Pennington and Josh Vela replied to turn the tables inside 25 minutes.

United enjoyed plenty of possession without finding a crucial equaliser - until James Henry’s cool finish midway through the second half.

They continued to push forward and Agyei got the all-important winner with his second goal at this ground in two seasons, sealing a third successive 3-2 triumph for Karl Robinson’s side at Shrewsbury.

Brandon Barker featured for the first time since pulling up with a hamstring injury seven minutes into the return fixture 18 days ago.

He came in for Mide Shodipo, while Henry’s return from suspension meant there was no room for Agyei.

Sam Winnall was back in the squad after a knee injury saw him miss last Saturday’s win over Plymouth Argyle, while Shrewsbury gave a full debut to 17-year-old striker Tom Bloxham.

United had to start well to nullify the expected lift of Steve Cotterill’s return to Montgomery Waters Meadow and in a flash they were ahead.

The U’s were ruthless, Mark Sykes catching Pennington in possession and advancing towards the Shrewsbury box before playing in Matty Taylor to his left.

United’s No 9 had every right to shoot but instead slipped the ball across to Lee, who finished into the empty net.

Rob Atkinson almost repeated his goal in the return fixture when he headed over from Henry’s corner after 13 minutes, but the hosts were very much in the game.

Bloxham and Ethan Ebanks-Landell went close as Shrewsbury forced four successive corners and the pressure eventually told.

It was a poor goal to concede, with Pennington allowed far too much space to meet Harry Chapman’s corner and head past Jack Stevens.

United followed the equaliser with arguably their final threatening spell of the half and Lee sent an effort from range just the wrong side of the near post.

They were quickly behind, though, as the U’s defence hesitated and Vela stole in, taking his time before beating Stevens one-on-one.

The goalscorer and Chapman sent efforts past the post just after the half-hour mark, while the imposing Bloxham used his size to good effect.

United were enjoying plenty of possession, but they were limited to long-range efforts for the rest of the half.

Neither side could gain the upper hand in a scrappy start to the second half, with the first effort on goal taking 14 minutes to arrive as Nathaneal Ogbeta blazed high and wide from the edge of the box.

Lee found space inside the Shrewsbury area moments later and fired towards the near post, but Ebanks-Landell got back to make an important block.

United gradually started to take control and another beautifully-worked goal drew them level.

Long crept inside and slid a ball into the feet of Lee, who fed the onrushing Henry to fire first-time past goalkeeper Harry Burgoyne.

With Portsmouth and Blackpool winning the U’s headed into the last 15 minutes needing a winner to stay on the coat-tails of the top six.

Lee, leaning back, fired over as he ran on to Barker’s cross, before the Luton Town loanee was replaced by Agyei.

Josh Ruffels then almost repeated his heroics from United’s last visit to this ground with 11 minutes left, but this time his far-post header bounced wide.

Winnall replaced Barker, before the left back went close again when David Davis failed to deal with Agyei’s cross, but the shot could not find its way through the bodies.

United continued to press, with Stevens virtually a spectator, and they got their reward with five minutes remaining.

Winnall caused problems challenging for a cross and the ball fell kindly for Agyei, who took his time before firing a deflected effort into the far corner.

Shrewsbury poured forward searching for another equaliser and Stevens was the stoppage-time hero, first tipping Ebanks-Landell’s header over and then palming away Shaun Whalley’s drive from the edge of the box.

It was a nervy finish, but the U’s are still right in it.

Shrewsbury Town (3-5-2): Burgoyne, Pennington, Ebanks-Landell, Pierre, Davis, Norburn, Vela, Walker (Whalley 69), Ogbeta (Udoh 90+2), Chapman (Williams 69), Bloxham (Main 69).

Subs: Bevan, Edwards, Love.

Booked: Walker.

Oxford United (4-3-3): Stevens, Long, Moore, Atkinson, Ruffels, Henry (Gorrin 89), Brannagan, Sykes, Lee (Agyei 77), Taylor (Hanson 89), Barker (Winnall 82).

Unused subs: Eastwood, Forde, Shodipo.

Booked: None.

Referee: Samuel Barrott (West Riding).