Championship side Middlesbrough reached the Carabao Cup quarter-finals after a thrilling win at League One Exeter.
Ryan Trevitt’s excellent opener put the underdogs ahead as he blasted into the top corner from the edge of the box.
But Morgan Rogers’ curling effort drew Boro level after the break and Samuel Silvera fired them ahead soon after.
Trevitt scored another long-range goal to bring Exeter level before giving away a late penalty that Emmanuel Latte Lath converted to put Boro through.
The win ended Exeter’s hopes of a first EFL Cup quarter-final appearance as they bowed out in the last 16 for the fifth time in the club’s history.
Boro made seven changes from the side that lost to Stoke City at the weekend and they dominated the possession from the off with Exeter getting bodies behind the ball as they did in the last round when they beat Premier League side Luton Town.
But unlike the last round Exeter fans did not have to wait until the final minutes to celebrate a goal as on-loan Brentford midfielder Trevitt fired in off the underside of the bar after good work down the right by Kyle Taylor.
Rogers, Dael Fry, Silvera and Anfernee Dijksteel all spurned half-decent chances in the following 15 minutes as Boro continued to keep hold of the ball.
Silvera forced the first decent save from Exeter keeper Vil Sinisalo in first-half stoppage time but Boro were left frustrated at the break.
However, the visitors came out for the second half with a new-found impetus and it took just a couple of minutes for them to level the tie as Alex Bangura dispossessed Jack Fitzwater in the box – leaving the City defender down injured – and Silvera superbly curled home.
The goal gave Boro an attacking foundation, forcing Exeter deeper and deeper as the League One side desperately fought to keep the scores level.
But they fell behind when Silvera got past Vince Harper on the left and curled a low right-footed effort into the bottom corner from the edge of the 18-yard box.
Silvera saw another effort fly just over three minutes later before Trevitt’s equaliser from just outside the box found the top corner after good work by Harry Kite.
But the 20-year-old’s night took a turn for the worse when he tugged on Rogers’ shirt as Exeter tried to clear the ball from the penalty area and Latte Lath sent Sinisalo the wrong way to put Boro into the last eight.
Exeter City manager Gary Caldwell told BBC Sport:
“It was a brilliant performance, loads of effort, loads of endeavour.
“We got asked some serious questions as a football team tonight against what I think is a top side, a potential Premier League side next season, and it wasn’t for the want of trying that we went out of the cup.
“So all credit to the players, they gave absolutely everything, I think we got beaten by the better team tonight and you sometimes have to hold your hands up to that, and good luck to Middlesbrough in the next round.”
Middlesbrough head coach Michael Carrick told BBC Radio Tees:
“We had a lot of the ball when they were fresh first half and they closed the spaces, and sometimes it can take a bit of time to break them down.
“Credit to them, they defended fantastically well and we were probably a bit safe in our play and maybe not aggressive enough in our attacking play, but there were a few changes so it’s understandable.
“I thought second half the spaces would open up and they did and we capitalised on it, and then they score another cracking goal.
“But you’ve got to face that sometimes in these type of games and I felt we overcame it fantastically well and everyone played their part.”
- 24FitzwaterSubstituted forDiabateat 60′minutesBooked at 68mins
- 7MitchellSubstituted forHarperat 34′minutes
- 23TaylorSubstituted forRichardsat 79′minutes
- 8TrevittBooked at 37mins
- 16KiteBooked at 75mins
- 10MuskweSubstituted forWildschutat 60′minutes
- 15DijksteelSubstituted forvan den Bergat 87′minutes
- 24BanguraSubstituted forEngelat 83′minutes
- 10RogersBooked at 75mins
- 18SilveraBooked at 44minsSubstituted forCrooksat 87′minutes
- 9Latte LathBooked at 83minsSubstituted forCoburnat 90′minutes
- 3van den Berg
- Graham Scott
Match ends, Exeter City 2, Middlesbrough 3.
Second Half ends, Exeter City 2, Middlesbrough 3.
Corner, Middlesbrough. Conceded by Vincent Harper.
Hand ball by Matt Crooks (Middlesbrough).
Attempt missed. James Scott (Exeter City) right footed shot from more than 35 yards misses to the right. Assisted by Ryan Trevitt.
Foul by Rav van den Berg (Middlesbrough).
Yanic-Sonny Wildschut (Exeter City) wins a free kick in the attacking half.
Foul by Hayden Hackney (Middlesbrough).
Jake Richards (Exeter City) wins a free kick in the attacking half.
Morgan Rogers (Middlesbrough) wins a free kick on the left wing.
Foul by Vincent Harper (Exeter City).
Substitution, Middlesbrough. Josh Coburn replaces Emmanuel Latte Lath.
Attempt missed. Harry Kite (Exeter City) right footed shot from outside the box misses to the left following a set piece situation.
Attempt blocked. Ryan Trevitt (Exeter City) right footed shot from outside the box is blocked.
Delay over. They are ready to continue.
Substitution, Middlesbrough. Rav van den Berg replaces Anfernee Dijksteel.
Substitution, Middlesbrough. Matt Crooks replaces Samuel Silvera because of an injury.
Delay in match because of an injury Samuel Silvera (Middlesbrough).
Foul by Isaiah Jones (Middlesbrough).
Zak Jules (Exeter City) wins a free kick in the attacking half.