Manchester City (4-1-4-1)
Ederson Toni Kroos’s 20-yard rocket beat him but not his bar. Had close to zero to do until flinging himself low to save near the end. 8
Kyle Walker His pass to Kevin De Bruyne allowed the latter to create Bernardo Silva’s first. Afterburners kept Vinícius Jr at bay. 8
John Stones In Franz Beckenbauer mode, his advance position was key to Silva’s sweet opener as yet again the No 5 impressed. 9
Rúben Días A spectator like the rest of the City backline who had a prime seat to witness the show before him. 8
Manuel Akanji Joined attack at will and coasted along enjoying just how brilliant those in front were from 0-90 minutes. Credited with third goal. 8
Rodri Early shot skimmed across the face Thibaut Courtois’s goal, as the Spaniard for an umpteenth occasion in City livery oozed control and craft. 8
Bernardo Silva Outstanding. Punched home City’s opener with aplomb. Did precisely the same – later – with his head. 9
Kevin De Bruyne Damaged Real by releasing Silva for his opener. Then had a slanging match with Pep Guardiola. Then created side’s third. 9
Ilkay Gündogan Ghosted close to goal to take aim and see the ball rebound on to Silva’s head for the second. Extra mark for back-heel nutmeg of Éder Militão. 9
Jack Grealish Scintillating. Flipped a ball over from which Erling Haaland surely had to score and was a simply irrepressible Jack-in-the box (and just outside it) throughout. 9
Erling Haaland Quiet by the big striker’s sublime goal-poaching standards, he should have scored via a right-footed second-half shot. 7
Subs Mahrez 8, Foden 8, Álvarez 8
Real Madrid (4-3-3)
Thibaut Courtois The goalkeeper being Real’s best player sums up their evening. Supreme point-blank saved from leaping Haaland header and had no chance with any City goal. 7
Dani Carvajal Watched Grealish’s dancing feet closely and could still not suppress the left-winger, who handed him a serious schooling. 2
Éder Militão Hapless Brazilian diverted Akanji’s goal–bound free-kick in to confirm City’s place in the dreamland of a final as he (and colleagues) were overrun by the Guardiola machine. 2
David Alaba Shaky under City press, he will not linger long on this outing in any book chronicling his career. Dipping free-kick nearly beat Ederson. 2
Eduardo Camavinga Battle with Silva intrigued initially until the Portuguese put on a masterclass. Was moved inside later. 3
Federico Valverde Off the pace. Failed to get any hold on City’s midfield thresher but is not the first – and definitely not the last. 4
Toni Kroos Struggled with blue waves flowing at him. Crashed a sweet strike off the City crossbar but the night zipped by as a blur. 3
Luka Modric Appeared every year of his 37: with no foundations about him the classy Croat sunk. Substituted on 62 minutes. 3
Rodrygo Saw little of the ball – apart from at the feet of City players. The Brazilian was taken off with 10 minutes left and may have been relieved. 3
Karim Benzema To see him deep in his half helping out summed up City’s dominance: was isolated and neutered. 5
Vinícius Jr Billed as the next superstar, the winger was an anonymous disappointment who could not ignite those around him in black. 4
Subs Rüdiger 5, Asensio 5, Ceballos 5, Vázquez 5, Tchouameni 5