The British driver Lewis Hamilton put his Monaco misery behind him with a controlled Canadian Grand Prix victory that sent the Formula One world champion 17 points clear of Mercedes team mate and title rival Nico Rosberg.
Hamilton's fourth victory in seven races this season, and fourth career win in Canada, denied Rosberg a third triumph in a row and provided the perfect response to losing out in the showcase race two weeks ago.
There he had been leading comfortably from pole only to lose out after a needless late pitstop when the safety car was deployed.
There was no need for the safety car today, at a circuit that has seen it plenty of times in the past, and there was little in the way of drama either -- other than a startled groundhog appearing on the track -- as Hamilton led from pole.
Rosberg was never close enough to attack and the rest of the field was so far behind as to be out of sight, with Hamilton lapping all but six of the cars behind him at the circuit where he took his first F1 win in 2007 with McLaren.
Finland's Valtteri Bottas was third for Williams, a massive 40.6 seconds behind Hamilton, to become the first driver from outside Mercedes or Ferrari to appear on the podium this year.
Bottas moved up one place from where he started, beating his fellow-Finn Kimi Raikkonen after the Ferrari driver spun following a pitstop.
Raikkonen finished fourth, ahead of team mate Sebastian Vettel who fought his way through the field from 18th at the start.
Bottas's Brazilian team mate Felipe Massa finished sixth after starting 15th.
Venezuelan Pastor Maldonaado scored his first points of the season for Lotus in seventh place and Germany's Nico Hulkenberg limbered up for his Le Mans 24 Hours debut next weekend with eighth place for Force India.
Russian Daniil Kvyat was ninth for Red Bull and Frenchman Romain Grosjean took the final point for Lotus after a late coming together with Manor Marussia's Will Stevens.
Neither of the McLarens finished the race, with Spain's double world champion Fernando Alonso expressing his frustration over the radio at being told save fuel.
The next race is in Austria in a fortnight.
1. Lewis Hamilton (Britain) Mercedes 151
2. Nico Rosberg (Germany) Mercedes 134
3. Sebastian Vettel (Germany) Ferrari 108
4. Kimi Raikkonen (Finland) Ferrari 72
5. Valtteri Bottas (Finland) Williams 57
6. Felipe Massa (Brazil) Williams 47
7. Daniel Ricciardo (Australia) Red Bull 35
8. Daniil Kvyat (Russia) Red Bull 19
9. Romain Grosjean (France) Lotus 17
10. Felipe Nasr (Brazil) Sauber 16
11. Sergio Perez (Mexico) Force India 11
12. Nico Huelkenberg (Germany) Force India 10
13. Carlos Sainz Jr (Spain) Toro Rosso 9
14. Max Verstappen (Netherlands) Toro Rosso 6
15. Pastor Maldonado (Venezuela) Lotus 6
16. Marcus Ericsson (Sweden) Sauber 5
17. Jenson Button (Britain) McLaren 4
18. Fernando Alonso (Spain) McLaren 0
19. Roberto Merhi (Spain) Marussia 0
20. Will Stevens (Britain) Marussia 0