Already leading 2-1 from the first leg, goals from Leroy Sane, Sergio Aguero and Kevin de Bruyne at Ashton Gate ensured Manchester City’s place at Wembley on Sunday, 25 February.
They dominated the first half and Sane deservedly put the visitors in front shortly before the break, with his deflected shot bouncing in after Bernardo Silva had dispossessed Hordur Magnusson.
Manchester City looked to have all but killed the tie early in the second half when Aguero’s strike across goal rounded off a lethal counter attack.
The Championship team produced a rousing final 20 minutes to give Guardiola’s side a brief late scare, with Marlon Pack’s smart header and Aden Flint’s stoppage-time goal threatening for a moment to take the tie into extra time.
But De Bruyne’s calm finish with the final kick of the game denied Bristol City a creditable draw on the night and confirmed Manchester City’s place in the final where they will face either Arsenal or Chelsea, who play the second leg of their semi-final on Wednesday.
The Robins, meanwhile, will turn their attention to converting their current fifth place in the second tier into promotion – with their four previous victories over Premier League opposition in the Carabao Cup giving them a taste of what they hope is to come.