Manchester City fought back to overcome Real Madrid 2-1 in the first leg of their 2020 UEFA Champions League last-16 tie on Wednesday in the Spanish capital.
Gabriel Jesus notched his fifth goal of the competition, and Sergio Ramos was handed his marching orders late in the game, collecting a 26th red card of his career.
Cristiano Ronaldo couldn't stop Juventus slipping to a surprise 1-0 defeat at Lyon, with the Italian champions failing to grab an away goal in the first leg.
Real Madrid 1-2 Manchester City
Lyon 1-0 Juventus
Robert Lewandowski (Bayern Munich): 11
Erling Haaland (Borussia Dortmund, Red Bull Salzburg): 10
Harry Kane (Tottenham Hotspur): 6
Dries Mertens (Napoli): 6
Serge Gnabry (Bayern Munich): 6
Kylian Mbappe (Paris Saint-Germain): 5
Gabriel Jesus (Manchester City): 5
Raheem Sterling (Manchester City): 5
Heung-Min Son (Tottenham Hotspur): 5
Memphis Depay (Lyon): 5
Mauro Icardi (PSG): 5
Lautaro Martinez (Inter Milan): 5
City achieved one of the greatest European nights in their history as they came back from the brink of defeat to snatch a victory in Spain.
The Premier League champions appeared ready to sit deep and play a possession game against Madrid, and a dour first half didn't prepare fans for an exciting finale.
Real took a surprise lead after 59 minutes when City's defence collapsed under pressure, but the opener only served as fuel for Pep Guardiola's men.
Guardiola started the game with Raheem Sterling and Sergio Aguero on the bench, and he called on the former to help change the direction of the result.
Sterling combined with Kevin De Bruyne, helping the Belgian to find Jesus for the equaliser with 12 minutes left.
The goal triggered a late rush from City, and Sterling was brought down in the box by Dani Carvajal five minutes later.
De Bruyne had ice in his veins as he made sure of the win from the penalty spot, and there was further misery for Real when Sergio Ramos was shown a red card for a late foul on Jesus.
It was a spectacular comeback by City, and Zinedine Zidane appeared to have no answer for Guardiola's tactics.
The Catalan told BT Sport he was delighted with the response from his team:
Lyon will travel to Turin with a vital one-goal advantage over Juve for the second leg of their clash after victory at the Groupama Stadium.
Lucas Tousart netted the only goal after 31 minutes for the Ligue 1 outfit, and Juve's slow start on the night contributed to their defeat.
Ronaldo was the visitors' biggest threat as he raided the box, and Juve believed they had made it 1-1 with just three minutes left, but Paulo Dybala's effort was ruled offside.
Lyon were defensively sound on the night. The French team stopped Juve's attack in their tracks, allowing them few scoring opportunities.
The home side created few chances during the match, but importantly, they denied Juve from having a single shot on target.