The England international made the most of an under-hit back pass from Marouane Fellaini, rounding David de Gea and rolling the ball into an unguarded net.
Messi then ensured there would be no way back for an Alaves side lackig cutting edge by classily volleying home his second ofthe afternoon from the edge ofthe box.
Arsenal were sloppy and struggled to create anything until they were gifted a lifeline with 13 minutes left, Declan Rice sending Chelsea keeper Robert Sanchez's poor clearance back past him into thenet.
Spurs dominated the early possession but the hosts took control when teenager Jack Hinshelwood fired into the roof ofthenet after Joao Pedro was allowed to drift across the length ofthe 18-yard line.
Haaland was not done there, and made the most ofthe space Everton left pushing for an equaliser when he galloped on to Kevin de Bruyne's through-ball, held off Jarrad Branthwaite and found the bottom corner ofthenet.
Harry Maguire then went close with a header, before McTominay made it third time lucky, following two previous efforts, as his deflected effort looped over Paul Izzo and into thebackofthenet.
Anfield did grow tense as the visitors searched for a way back into the game and committed men upfield, but Firmino added another goal late on by footing into an empty net to ensure that no party in front ofthe club's owners was to be spoilt
The hosts deservedly went in front in the 13th minute after good work from Malo Gusto ended with the full-back squaring the ball to Mykhailo Mudryk to net from close range.
Raheem Sterling had two big opportunities for City but wasted both as Manuel Pellegrini's side find themselves on theback foot once more in the Champions League.
According to Dailymail, the Frenchman, who entered the fray on 68 minutes, had the ball in thebackofthenet on 83, when he calmly slotted fellow substitute Alex Iwobi's pull-back home from around 10 yards out.
And Ronaldo then bounced back from his spot-kick miss with an emphatic finish, as Madrid took full advantage of Sevilla's earlier 1-1 slip-up at Sporting Gijon to go three points clear at the top for at least a couple of hours.
The game started with Real Madrid in control and they were looking dangerous from the get-go. They could have had a penalty after a couple of minutes but the ref didn't spot the push on thebackof Theo Hernandez.