Match ends, Leicester City 1(3), Manchester City 1(4).
Manchester City manager Pep Guardiola said he was "so, so, so, so so, happy" after his side reached the semi-finals of the Carabao Cup following a penalty shootout victory over Leicester.
Goalkeeper Claudio Bravo, who saved two spot-kicks in the previous round against Wolves, was again the visitors' hero - keeping out Riyad Mahrez's effort after Jamie Vardy had hit the post.
The home side had taken the game into extra-time and then penalties after scoring in the final minute of time added on.
Vardy slotted home a penalty after Demarai Gray was harshly adjudged to have been brought down by Kyle Walker.
Guardiola said: "What I liked the most is how we reacted and overcame that situation. It is a good indication for the future."
With both teams fielding second-string sides at the King Power Stadium, visiting winger Bernardo Silva scored the opener in the first half, slotting home his second goal of the season following Ilkay Gundogan's powerful run from the halfway line.
Manchester City will face Bristol City in the semi-finals. The Premier League club host the first leg in the week commencing 8 January. The second leg is two weeks later. Chelsea and Arsenal contest the other semi.
Quadruple? 'Forget about it'
Manchester City chairman Khaldoon Al Mubarak said in May that the club's ambition for this season is to win a quadruple of Champions League, Premier League, FA Cup and EFL Cup.
Progression in this competition keeps them on track to achieve that aim, with the campaign's first trophy being available in February at Wembley.
Since being beaten by Arsenal in last season's FA Cup semi-finals, Guardiola's side have gone 27 games in England without defeat, with draws against Everton in the league and against Wolves and Leicester in the EFL Cup. Only Shakhtar Donetsk have beaten them this season in the Champions League.
Asked about winning all four trophies this season, Guardiola - whose Barcelona side won all six trophies on offer in 2009 - said: "Forget about it. That is not going to happen."
Gundogan, Yaya Toure, debutant Lukas Nmecha and Gabriel Jesus all converted their efforts in the shootout to put City through.
Guardiola made nine changes for the game, giving a start to teenage midfielder Phil Foden two days after the England Under-17 World Cup winner had been named BBC Young Sports Personality of the Year.
Fellow midfielder Brahim Diaz, 18, and 20-year-old defender Tosin Adarabioyo also came in, but it was the experienced Gundogan who set up the opening goal, weaving past the home players before playing in Silva for a cool finish.
The Portuguese international could have added more to his tally but thumped a shot straight at goalkeeper Ben Hamer and also struck an effort wide.
Guardiola added: "A lot of young players played. I am so happy for all the players.
"They showed me very good things. How you react is important and there were no complaints from the players in extra time about how it was unfair that they had scored a late goal.
"The way we had to react was not easy, we were tired, we had a lot of young players, Danilo was playing at centre-back for the first time in his life."
Madley says yes, Madley says no
It was a frenetic finale to the match after referee Robert Madley instructed the fourth official to indicate eight minutes of injury time.
He proceeded to make three key decisions:
90+7 minutes, PENALTY: With Gray running through into the box, Kyle Walker ran across the winger, clipped his foot and sent him sprawling to the ground.
111 minutes, NO PENALTY: Madley sent off Walker for two quick yellow cards in the draw against Everton and booked the full-back for diving in extra-time, under the challenge of Aleksandar Dragovic.
126 minutes, NO PENALTY: Riyad Mahrez played a ball through behind the Man City backline. Danilo, already on a booking, was tracking back and came together with Vardy, with the England striker tumbling over, but the official waved play on.
What could have been for Leicester…
The Foxes will no doubt lament a missed opportunity after ending the game strongly.
They were energised by the second-half introduction of Vardy and Riyad Mahrez, and the two combined when Algerian Mahrez's cross was met by Vardy, but he flicked a header wide of goal.
Mahrez also forced Bravo into a fine save low to his right.
Striker Kelechi Iheanacho, who joined Leicester from City in the summer, has struggled for goals since making the £25m move and his tame shot from 10 yards was easily saved by Bravo in the first half.
"We were unlucky," said Frenchman Claude Puel. "We had the most chances. It was a fantastic game between two good teams.
"We gave our best. It was important to give a good response after the last league game. I like our positive outlook.
"It was a good moment for Jamie to come into the game. It was a good thing for him to score tonight. No regrets about tonight."
- 16DragovicSubstituted forBenalouaneat 111'minutes
- 15MaguireBooked at 105mins
- 11AlbrightonSubstituted forMahrezat 57'minutes
- 3ChilwellSubstituted forGrayat 71'minutes
- 8IheanachoBooked at 23minsSubstituted forVardyat 57'minutes
- 3DaniloBooked at 90mins
- 15MangalaSubstituted forWalkerat 81'minutesBooked at 96mins
- 8GündoganBooked at 61mins
- 42Y Touré
- 47FodenSubstituted forDele-Bashiruat 90+1'minutes
- 20Bernardo Silva
- 33Gabriel Jesus
- 55DiazSubstituted forNmechaat 88'minutes
- Robert Madley
- Shots on Target
Penalty Shootout ends, Leicester City 1(3), Manchester City 1(4).
Penalty saved! Riyad Mahrez (Leicester City) fails to capitalise on this great opportunity, left footed shot saved in the centre of the goal.
Penalty missed! Still Leicester City 1(3), Manchester City 1(4). Jamie Vardy (Leicester City) hits the left post with a right footed shot.
Goal! Leicester City 1(3), Manchester City 1(4). Gabriel Jesus (Manchester City) converts the penalty with a right footed shot to the bottom right corner.
Goal! Leicester City 1(3), Manchester City 1(3). Lukas Nmecha (Manchester City) converts the penalty with a right footed shot to the bottom right corner.
Goal! Leicester City 1(3), Manchester City 1(2). Vicente Iborra (Leicester City) converts the penalty with a right footed shot to the bottom left corner.
Goal! Leicester City 1(2), Manchester City 1(2). Harry Maguire (Leicester City) converts the penalty with a right footed shot to the bottom left corner.
Goal! Leicester City 1(1), Manchester City 1(2). Yaya Touré (Manchester City) converts the penalty with a right footed shot to the bottom left corner.
Goal! Leicester City 1(1), Manchester City 1(1). Ilkay Gündogan (Manchester City) converts the penalty with a right footed shot to the centre of the goal.
Goal! Leicester City 1(1), Manchester City 1. Christian Fuchs (Leicester City) converts the penalty with a left footed shot to the top right corner.
Penalty Shootout begins Leicester City 1, Manchester City 1.
Second Half Extra Time ends, Leicester City 1, Manchester City 1.
Lukas Nmecha (Manchester City) wins a free kick in the defensive half.
Foul by Vicente Iborra (Leicester City).
Attempt saved. Yaya Touré (Manchester City) right footed shot from outside the box is saved in the centre of the goal. Assisted by Tom Dele-Bashiru.
Attempt saved. Jamie Vardy (Leicester City) right footed shot from the right side of the box is saved in the bottom left corner. Assisted by Harry Maguire.
Corner, Manchester City. Conceded by Yohan Benalouane.
Attempt saved. Riyad Mahrez (Leicester City) left footed shot from outside the box is saved in the centre of the goal. Assisted by Harry Maguire.
Ilkay Gündogan (Manchester City) wins a free kick in the defensive half.