Lewis Hamilton won a controversial Canadian Grand Prix to extend his lead in the world championship as a five-second time penalty denied Sebastian Vettel a first Formula One win of the season.
The decisive moment came on lap 48 when Vettel, who was leading the race and seemingly on course for victory having started on pole, ran wide at turn four and re-joined the track via the grass, only just avoiding pushing Hamilton into the wall.
Race stewards ruled against Vettel and handed him a time penalty for an unsafe re-entry, meaning the Mercedes driver just had to stay fewer than five seconds behind, which he duly did to claim victory despite being the second man across the line.
"They are stealing the race from us," protested Vettel on team radio after being informed of the decision. "I had nowhere to go, I didn't see him. You go to the grass and you come back, where the hell are you supposed to go?"
Vetttel's Ferrari team-mate Charles Leclerc finished third as he closely followed the drama at the front, but a double podium will only be slim consolation to Ferrari as Mercedes made it seven straight wins in 2019.
In a race of damage limitation, Valtteri Bottas was fourth having dropped to seventh on the first lap, eventually overcoming the Renaults of Daniel Ricciardo and Nico Hulkenberg, who were sixth and seventh.
The Finn also claimed a point for the fastest lap, but the result meant Hamilton – who earlier held off Leclerc to preserve second position on the first corner – increased his advantage over his Mercedes colleague to 29 points.
Max Verstappen started ninth and his patient game of starting on the hard tyres plus stopping later than the other contenders worked as he improved to end the race fifth, ahead of the Renaults and team-mate Pierre Gasly.
That was still the Dutchman's worst result of the season so far, with Gasly eighth in the other Red Bull followed by Lance Stroll – in his home grand prix – and Daniil Kvyat in the final points positions.
WORST STREAK OF VETTEL'S CAREER CONTINUES… AND HE'S FUMING
A furious Vettel, who marched off to complain to the stewards immediately after the finish, had been starting from the front for the first time in 17 races.
Prior to the drama, the German only briefly surrendered the lead when he pitted before Hamilton and team-mate Charles Leclerc in a move that was set to pay off.
But the stewards ensured Vettel could not claim his first triumph since Belgium last August, and has how gone 15 completed races without a win, extending the worst run of his career.
Prior to the podium ceremony, an angry Vettel moved the number one sign to his car and put the number two on Hamilton's in parc ferme in astonishing scenes.
Speaking on team radio after crossing the line, he had said: "No, no, no, guys. Not like that. This is not fair."
CANADA NOW HAMILTON'S BEST TRACK
It may not have been how Hamilton expected to win, but the triumph made Canada the most successful venue of the Briton's magnificent career.
He has now won seven times in Montreal, tying the record held by Michael Schumacher, and has more victories there than he has ever recorded at any other circuit, having won six times in Hungary, China and the United States.
RICCIARDO REACHES 1,000 MILESTONE
Ricciardo needed to finish seventh or higher to become the second Australian, after Mark Webber, to reach 1,000 F1 points.
A sixth-place finish was therefore more than enough – and having two men in the points following Ricciardo's superb fourth in qualifying suggests Renault have turned the corner after a frustrating start to the season.
IN THE POINTS
1. Lewis Hamilton (Mercedes)
2. Sebastian Vettel (Ferrari) +3.658s
3. Charles Leclerc (Ferrari) +4.696s
4. Valtteri Bottas (Mercedes) +51.043s*
5. Max Verstappen (Red Bull) +57.655s
6. Daniel Ricciardo (Renault) +one lap
7. Nico Hulkenberg (Renault) +one lap
8. Pierre Gasly (Red Bull) +one lap
9. Lance Stroll (Racing Point) +one lap
10. Daniil Kvyat (Toro Rosso) +one lap
*Bottas received a bonus point for recording the fastest lap
1. Lewis Hamilton (Mercedes) 162
2. Valtteri Bottas (Mercedes) 133 (-29)
3. Sebastian Vettel (Ferrari) 100 (-62)
4. Max Verstappen (Red Bull) 88 (-74)
5. Charles Leclerc (Ferrari) 72 (-90)
1. Mercedes 295
2. Ferrari 172 (-123)
3. Red Bull 124 (-171)
4. McLaren 30 (-265)
5. Renault 28 (-267)
The drivers head back to Europe in a fortnight for the French Grand Prix, a race which returned to the calendar after a nine-year absence in 2018 and was won by Hamilton, with Verstappen coming second.