Mark Tinkler named an unchanged side from that which edged past Fulham after comprehensively beating Rotherham United.

There was half chance for Boro with their first attack as Stephen Walker raced down the right and cut into the penalty area. Had he fallen under challenge the referee would have been left with an interesting decision, as it was he stayed on his feet but ran out of room.

It was City with a more clear-cut chance with 13 minutes played as the ball was played in deep to Layton Ndukwu and a well-struck volley was sent straight at Zac Hemming.

Swiftly to the other end and Tyrone O'Neill saw an on-target shot deflected for a corner.

Gradually City began to exert pressure, with Boro's ball retention not as effective as it had been in the previous two games in the competition.

Withstanding the efforts from the visitors, Connor Malley set off at pace just left of centre and brought a save to his left from City skipper Cameron Yates.

With more composure either side could have taken the lead in a period of cut and thrust. First Marcus Tavernier sent a free-kick over the bar, before Calvin Ughelumba was just off target from close range.

Boro were reduced to 10 men two minutes from end of normal time at the end of the first half when captain James Cook was shown a straight for a challenge on Lamine Kaba Sherif.

A minute later, Mark Tinkler made his first change, enforced but the sending-off, with Malley replaced by Nathan Guru.

Half-time: Boro 0 Leicester City 0

A darting run from Tavernier saw Boro get off to a positive start, though the visitors soon began to make their man advantage tell as they stretched the game.

It was clear Boro would have to dig in.

Simran Thandi shot weakly at Hemming from the edge of the penalty area, Ndukwu miscontrolled when in with a half chance, then Kanya Leshabela ran out of room on the right.

Boro settled and despite their numerical disadvantage they took the game to their visitors and Marcus Tavernier hit the inside of a post with a powerful header from a corner.

It was Tavernier again in the thick of the action, this time a header forcing an excellent tip over from Yates.

With four minutes remaining the numbers were evened up as Kairo Arlott-Edwards followed through on Nathan Convery and was shown a straight red.

90 minutes: Boro 0 Leicester City 0

There was an early half chance for Harrison Myring as he capitalised on slight defensive hesitancy, but the substitute failed to capitalise and shot just wide.

It was Myring again who almost broke the deadlock eight minutes into extra-time, a shot from 14 yards well tipped over by Hemming.

The breakthrough came with 104 minutes played when a 20-yard shot from Simran Thandi took a wicked deflection leaving Hemming with no chance to stopping it.

Half-time in extra-time: Middlesbrough 0 Leicester City 1

The second period became stretched as Boro pushed for an equaliser and Jack Lambert saw a curling effort deflected just wide.

It came at the start of a period of pressure with at one point everyone except Hemming either in or a yard from the City penalty area.

With just over a minute remaining Boro won two free-kicks close to the edge of the City box, but couldn't make either count.

Boro: Hemming; Convery, Reading, Liddle, Cook (Capt.), Renton, Lambert, Tavernier, O'Neill, Malley (Guru 45+1), Walker (Wilson 105). Subs: Brynn (gk); Holdsworth, Cooke.

Leicester: Yates (Capt.); Thandi, Ughelumba, Kaba Sherif, Pascanu, Tee, Dewsbury-Hall, Arlott-Edwards (Myring 88), Ndukwu, Leshabela (Brown 120+1). Subs: Harrison (gk); Templeton, Hodby.

Referee Paul Brown
Red Cards 
Cook 43, bad tackle.
Arlott-Edwards 86, bad tackle.
Yellow Card
Tavernier 90+1, foul

Attendance 231