Raheem Sterling scored his 100th goal for the club as Manchester City booked their place in the quarter-finals of the Champions League by beating Real Madrid.
City held a 2-1 advantage after winning the first leg of their Round of 16 tie in Spain. And they matched that scoreline to ensure they progress to the Last Eight.
Sterling put City in the driving seat after eight minutes with his landmark 100th goal. However, Madrid hit back just before the half-hour mark through Karim Benzema.
City restored their lead in the game, and extended it in the tie overall, in the second half, when Gabriel Jesus finished from a tight angle.
It means Pep Guardiola’s side win the tie 4-2 on aggregate. They will face Lyon – who beat Juventus on away goals – in the quarter-finals.
Despite the match being played behind closed doors, City looked pumped up from the outset and determined to pull of a repeat of their famous victory at the Bernabeu in February.
They benefited from two horrendous errors from Varane but their relentless intensity gave the newly-crowned Spanish champions little time to settle.
City manager Pep Guardiola put his faith in Phil Foden to start ahead of veteran David Silva and had a bigger surprise in store by initially deploying the 20-year-old as a false nine.
That meant Jesus pushed out on to the right and the Brazilian immediately made his presence felt by forcing the mistake that led to Sterling’s ninth-minute opener.
Real made a mess of an attempt to play out from the back and Varane – whose regular defensive partner Sergio Ramos was a vocal presence in the stands only due to suspension – dwelt too long in possession.
Jesus barged him off the ball too easily and quickly squared for an unmarked Sterling to tap home his 100th City goal.
It was a dream start for the hosts and Sterling went close again with a shot that dipped just over soon after.
Real threatened for the first time when the dangerous Benzema turned Aymeric Laporte on the edge of the area but Ederson beat away his powerful drive.
Ederson also dealt comfortably with another effort from Eden Hazard, who was passed fit after more ankle trouble, but Real enjoyed a good spell and levelled after 28 minutes. Benzema did the damage with a powerful header after Rodrygo got to the byline.
City refused to sit back in response and Kyle Walker shot over before Joao Cancelo tested Thibaut Courtois from distance.
Courtois then got away with an error as a clearance went straight to Kevin De Bruyne but Foden shot narrowly wide.
Courtois made amends for that early in the second half after De Bruyne slipped Sterling in behind the defence with a superb pass. The keeper reacted brilliantly as Sterling struck left-footed from a tight angle, palming away for a corner.
De Bruyne threatened himself soon after but was denied by a good challenge from Dani Carvajal before Ederson saved from Benzema.
Courtois was called upon again to keep out a Jesus shot on the turn but he could do nothing after another Varane blunder in the 68th minute.
Varane failed to cut out a long ball forward and then made an ineffective attempt to head back, allowing Jesus to nip in and dink over the keeper.
Sterling wanted a penalty soon after following a challenge by Carvajal but nothing was given.
Silva came on in the closing stages for what was his final appearance at the Etihad and City held firm to secure their place in the next round.