Real Madrid fought back from the brink of elimination to beat Manchester City 3-1 after extra time and 6-5 on aggregate in an enthralling and dramatic Champions League semi-final on Wednesday.
City led 1-0 on the night and 5-3 on aggregate when Riyad Mahrez scored after 73 minutes but Real substitute Rodrygo equalised in the last minute of normal time and headed home one minute later to level the tie at 5-5.
Five minutes into extra time Karim Benzema converted a penalty awarded for a foul on him by Ruben Dias and Real, the record 13-times European champions, held the shell-shocked English side at bay to reach the final.
Sportsmail’s JACK GAUGHAN rated the players at the Bernabeu.
Real Madrid (4-2-3-1)
Thibaut Courtois – 8
Pulled off two top saves before the break – and a stunning finger tip stop from a Phil Foden header late on.
Dani Carvajal – 7
Stood his ground against Foden, who went to go and look for the ball elsewhere after a while.
Eder Militao – 6
The centre half appeared uncomfortable with runners in the channel between him and the full back.
Nacho – 7
Brought the ball out nicely on occasion and tried to stay tight to Ferland Mendy to cover space.
Ferland Mendy – 6.5
Only beaten once or twice by Riyad Mahrez cutting inside. Won some vital headers at the back post.
Toni Kroos – 6
Few eye-catching crossfield passes switched the game up. Real will have wanted the German more involved though.
Casemiro – 7
Really should have been sent off before half-time. Strong performance when not committing cynical fouls.
Federico Valverde – 7
Kept Joao Cancelo penned back somewhat and sent in a couple of dangerous crosses for Karim Benzema.
Luka Modric – 6.5
The energy of a midfielder a decade younger than him. Modric was everywhere again, knitting play.
Vinicius Junior – 6
The most threatening of Real’s front line but also wasteful. Decision-making left a bit to be desired.
Karim Benzema – 7
Marshalled well by Aymeric Laporte for the majority before he coolly slotted the penalty past Ederson.
Rodrygo (for Kroos, 68) – 8.5 , Marco Asensio (for Casemiro, 75) , Eduardo Camavinga (for Modric, 75), Dani Ceballos (for Benzema, 104), Jesus Vallejo (for Militao, 115), Lucas Vazquez (for Vinicius, 115)
Subs not used: Lunin, Fuidias, Alaba, Marcelo, Jovic, Ceballos, Diaz
Manager: Carlo Ancelotti – 8
Credit the Italian, Real came out after half-time a completely different team and his substitutions worked a treat.
Manchester City (4-3-3)
Ederson – 6
Clearly told to slow things down from the off and played his part with expected nonchalance.
Kyle Walker – 7
A risk to start, and aggravated his ankle injury, but produced against the speed of Vinicius. Made a huge difference.
Ruben Dias – 5.5
Shaky early on and then ridiculously rash to gift Karim Benzema a penalty in extra-time. Poor.
Aymeric Laporte – 6.5
Lucky he pulled out of the slap on Modric. Calmed down and was composed until the drama late on.
Joao Cancelo – 6
Had looked defensively very good up against Valverde but struggled more once Walker went off.
Bernardo Silva – 8
Some dainty touches to take the sting out of the game. Ran the show for spells and all over the place.
Rodri – 7
Positionally very aware in thwarting Modric’s progress and picking up spare men when Real broke.
Kevin De Bruyne – 6
Not really his night. Some clever play mixed with frustration, his control not quite as close as usual.
Riyad Mahrez – 7
Fairly average for most of the night but thought he had sent City through with a superb finish.
Gabriel Jesus – 6
A peripheral figure after such a strong run of form. Could not get going through the middle or wide left.
Phil Foden – 6.5
Put in a real shift when thrust through the middle and had to deal with a fair amount of rough treatment too.
Oleksandr Zinchenko (for Walker, 72) – 6. Ilkay Gundogan (for De Bruyne, 72) – 6. Jack Grealish (for Jesus, 78). Fernandinho (for Mahrez, 85), Raheem Sterling (for Rodri, 99)
Subs not used: Steffen, Carson, Ake, Egan-Riley, Palmer, McAtee, Lavia
Manager: Pep Guardiola – 6
Left shellshocked by a capitulation in stoppage time when City were cruising into another final.
Referee: Daniele Orsato (ITA) – 4
Lost control early doors and never recovered. Terrible display summed up by a failure to book Casemiro.