Manchester City pulled off a stunning late fightback to beat Real Madrid 2-1 away in the Champions League last-16 first leg in which Real had captain Sergio Ramos sent off.
Kevin De Bruyne kept his cool to beat Belgium team-mate Thibaut Courtois from the penalty spot in the 82nd minute to give City the lead after Gabriel Jesus had headed home a cross from De Bruyne to pull the visitors level in the 78th minute.
Isco had given Real the lead on the hour mark following a sweeping counterattack but the 13-times European champions' night soon unravelled, culminating in Ramos being sent off for hauling down Jesus in a bid to prevent a third City goal.
Ramos will be suspended for the second leg at the Etihad Stadium on 17 March while City's influential defender Aymeric Laporte was forced off injured in the first half, another setback of in a season marked by fitness troubles.
City had gone into the encounter under a cloud after recently being banned from the competition for the next two years.
That issue will continue to overshadow their immediate future but their fine display under pressure in Madrid at least breathed new life into their current campaign.
City's Benjamin Mendy got himself suspended for the second leg when he was booked for a high challenge on Luka Modric and a bigger blow for the visitors followed as Laporte was forced off.
The visitors upped the tempo after the break and Riyad Mahrez twice forced Courtois to save before the visitors were suddenly punished on the break on the hour.
Vinicius led the charge down the right and beat Kyle Walker to square for Isco, who slid home clinically.
De Bruyne did brilliantly on the left to beat two players and then cross for Jesus to head home the equaliser.
Jesus then headed over soon after before Sterling was brought down in the area.
After missing five of their previous seven spot-kicks, City gave responsibility to De Bruyne and he made no mistake.
There was still more drama as Ramos hauled down Jesus as City chased more goals, adding a 26th Real red card to the Spain defender's collection.
Goalscorer De Bruyne was delighted with City's comeback and how they fought after going behind.
He told BT Sport: "It's a very good start for the first game. The first 15 minutes we struggled for a bit but you have to go through the storm.
"It was a pretty even first half and we started the second half pretty well. The (Real) goal came at a bit of a bad moment for us because I think we were dominating at the time.
"I thought our response was brilliant. It was a beautiful goal from Gabi and the second goal, the penalty was very important for us."
In the night's other game, Lyon held out to secure a 1-0 win over Juventus at the Groupama Stadium.