Manchester City came from behind twice to secure a crucial two-goal advantage after a classic Champions League last-16 tie against Monaco at Etihad Stadium.
Raheem Sterling gave Manchester City a 26th-minute advantage after fine work by Leroy Sane
Monaco proved their threat to lead before half-time through Radamel Falcao’s header and Kylian Mbappe’s powerful rising drive.
Falcao then saw a penalty saved by Willy Caballero just after the break before Monaco keeper Danijel Subasic’s blunder gave Sergio Aguero his first goal.
Colombian Falcao later lifted a brilliant chip over Caballero to put Monaco back in front – but this was the signal for City to launch an enthralling attacking salvo.
Aguero volleyed in another equaliser before John Stones made amends for poor defending in the build-up to Falcao’s second by putting City ahead on the night with a sliding finish at the far post after 77 minutes.
Sane handed City another goal with a simple tap-in from Aguero’s pass eight minutes from time – but Monaco’s vibrant attacking ambition means this tie is far from over.