Ederson A couple of dodgy moments in the first half and he might have done better for Vinicius' goal. 5
John Stones Had a hazardous 35 minutes in which his injury problem may have hampered him — and had to be subbed. 5
Ruben Dias Had Benzema wrapped up for long spells, but great strikers always find a way. 6
Aymeric Laporte Did not sense the Vinicius danger until it was too late, but his handball was just unlucky. 7
Oleks Zinchenko Sharp and furious, closing down quickly and adding some top-class value to the City attack. 8
Rodri Dominated the midfield in a fabulous first half, always available, usually precise. 8
Bernardo Silva His hassling of Kroos and the back four was a masterclass — and he topped it with the sweetest strike of the night. 8
Kevin De Bruyne Scored the first, made the second and was exceptional throughout. 9
Riyad Mahrez Brilliant cross for the first but missed two great chances and should have crossed to Foden. 7
Gabriel Jesus Did superbly for his goal and led the line superbly — you can't be selling him on this performance. 9
Phil Foden Born for nights like this — a dancing, prancing menace whose goal was just reward for the torment he inflicted on Madrid. 9
Subs
Fernandinho
(for Stones 36) Won't be happy with Vinicius' goal but acquitted himself superbly in an unusual position, including an assist 7
Raheem Sterling
(for Jesus 83) No time to make his mark
Not used: Steffen, Carson, Ake, Gundogan, Grealish, Egan-Riley, Mbete, Palmer, McAtee, Lavia