Pep Guardiola has taken Manchester City through to the semi-finals of the Champions League for the first time as coach and only the second time in their history after a comeback win against Borussia Dortmund in the last eight in Germany.
Holding a 2-1 lead from the first leg, City found themselves 1-0 down in the return leg when 17-year-old England international Jude Bellingham curled in a superb shot from the edge of the box.
The visitors rallied after falling behind with Kevin de Bruyne and Riyad Mahrez going close in the first half before Mahrez fired his side ahead again in the tie after Emre Can was penalised for handling in the box.
Phil Foden then made sure of the win with a fierce drive adding to the late goal he scored at the Etihad to give his side their first-leg lead.
City will face Paris St-Germain in the semi-finals, with the French side having eliminated holders Bayern Munich on Tuesday.
Meanwhile, Liverpool have been knocked out of the competition after they could only play out a goalless draw with Real Madrid at Anfield.
Jurgen Klopp’s side needed to score two goals to go through after losing the first leg in Madrid 3-1.
But they were undone by poor finishing with Mohamed Salah and Georginio Wijnaldum the major culprits.
Real Madrid will face Chelsea, who beat Porto on Tuesday, in the semi-final.