Bravo, who was the Blues' penalty shoot-out hero in the last round against Wolves, saved the Foxes' final penalty to ensure City's 100% conversion was enough.
City had led in normal time through a Bernardo Silva strike, before the Foxes scored a controversial penalty seven minutes into added time.
It was a tiring match, but the Blues' boss will be very proud of the way his side beat a strong Leicester side on their own patch.
The personnel might have been different, but the passing, movement and industry bore all the hallmarks of City’s regular starting XI.
The hosts barely had a touch of the ball in the first 15 minutes as they chased sky blue shadows around the King Power Stadium pitch.
Slick, skillful and inventive, it’s clear to see Pep Guardiola’s philosophy has been absorbed by all his first team squad - regulars and those on the periphery.
The first opportunity of the game fell to Bernardo Silva who found space in the Foxes box before firing an angled shot that keeper Ben Hamer comfortably beat away.
A minute later, Hamer lost the ball on the edge of his own box and Ilkay Gundogan saw his shot cleared by a covering defender – but only to Bernardo who then shot narrowly wide.
Gundogan was bossing things in the centre of the park and the classy German nearly caught Hamer out on 20 minutes with a clever chip that the keeper managed to push over.
The breakthrough came on 26 minutes and it was goal created by the excellent Gundogan who won possession just inside his own half before driving forward, taking out three defenders as he slipped a pass to Bernardo and the Portuguese playmaker made no mistake from close range.
It was no more than the Blues deserved after almost total domination.
Bernardo again went close a few minutes later after a neat exchange by impressive duo Brahim Diaz and Phil Foden saw the latter whip in a fine low cross that the Portugal star was inches away from converting.
Claudio Bravo was called into action on only a couple of occasions, the second of which saw the Chilean make a smart low save from former Blue Kelechi Iheanacho’s shot – Leicester’s best chance of a half that the former Premier League champions were second best in from start to finish.
The Foxes improved in the early stages of the second-half, putting pressure on the unfamiliar City rear-guard with several long throw-ins, but a clever Gundogan pass almost put Gabriel Jesus through on goal before the Brazilian was wrestled off the ball and clashed with keeper Hamer.
Leicester boss Claude Puel brought his two trump cards on just before the hour-mark in the shape of Riyad Mahrez and Jamie Vardy, but it was City who should have doubled the lead in the next attack as Danilo’s long ball set Bernardo clear, but he got caught in two minds as he angled in from the right and the chance went begging.
Lukas Nmecha and Tom Dele-Bashiru were handed their debuts late on as the Blues looked to see out the minutes that remained.
The Foxes huffed and puffed but struggled to blow down City's defence, which was well marshalled by Tosin Adarabioyo and Eliaquim Mangala, but the loss of Mangala with a bloodied nose resulted in what felt like an excessive amount of added time - eight minutes - and it was in the sixth minute of this that Kyle Walker was harshly judged to have bundled over Demarai Gray and a penalty was awarded.
Vardy converted and the hosts suddenly had an unexpected lifeline.
In the extra time that followed Walker was booked for simulation in the Leicester box but the referee may have got that one wrong, too - Walker looked to have been clipped as he drove into the box as the official continued to anger the travelling 3,000 City fans.
The Blues kept plugging away and Yaya Toure was unlucky to see a 25-yard free-kick pawed away by Hamer and Oleksandr Zinchenko fizzed a shot over from a similar distance five minutes later.
It was impressive stuff by the inexperienced Blues who had deserved better but with no further scoring, a penalty shoot-out was needed to settle the tie using the ABBA method.
Gundogan, Yaya Toure, Nmecha, Gabriel Jesus all scored for the Blues before Vardy missed the target and Bravo saved Mahrez's effort to give Blues a 4-3 win on spot-kicks.
Overall, it was no more than City deserved.
Robert Madley's decision to add on eight minutes and award a controversial penalty in that time undoubtedly swung the pendulum Leicester's way.
Star man: Bernardo Silva
Tireless effort from the diminutive attacking midfielder.
What it means…
The Blues will now play a two-legged semi-final in January with the first leg on 9/10 January and the return a fortnight later on 23/24 January against opponents yet to be known, though it will be one of either Arsenal, Bristol City/Manchester United or Chelsea/Bournemouth.
The draw will be made after the conclusion of United's tie with Bristol City.
City host Bournemouth at the Etihad this Saturday, looking to consolidate an 11-point lead at the top of the table.
Then, after the Christmas break, it’s off to Newcastle United on December 27th as the relentless schedule continues.