flag 14.4 seconds clear of Spain's Fernando Alonso, driving a Ferrari.
Red Bull Formula One driver Sebastian Vettel of Germany gestures on the podium after winning the Canadian F1 Grand Prix at the Circuit Gilles Villeneuve in Montreal. Reuters
Briton's Lewis Hamilton, who had won in Montreal three times before, made it a podium of champions by finishing third for Mercedes after being passed by Alonso in the closing laps.
Vettel's Australian team mate Mark Webber was fourth and Germany's Nico Rosberg, winner of the previous race in Monaco for Mercedes, fifth.
Vettel's win was his third from seven races this season while Alonso roared from sixth to second to leapfrog Kimi Raikkonen into second-place overall.
Raikkonen, the 2007 champion, finished ninth in his Lotus to equal Michael Schumacher's record of 24 successive grands prix in the points.
Red Bull driver Sebastian Vettel, of Germany, crosses the finish line to win the Canadian Grand Prix auto race in Montreal. AP Photo
Despite his domination of the sport in recent years, Vettel had never won in either Canada or the United States before breaking his drought in emphatic fashion on Sunday - even if he skimmed the wall at one point.
He made a clean getaway from pole position and led for almost the entire 70-laps. The only time he was not in front was a brief period when he made the first of his two pit stops to get fresh tyres.
Vettel lapped half the field, including Raikkonen, before reaching the half way point of the race and only five cars finished on the same lap as him when he crossed the line.
Sebastian Vettel drinks champagne with 2nd place Ferrari driver Fernando Alonso after the F1's Canadian Grand Prix in Montreal. AP
McLaren failed to score, at a circuit where they have won four times in the last five years, for the first time in 65 races.
Former champions Williams also ended up empty-handed, despite Finnish rookie Valtteri Bottas starting third on the grid, for the eighth race in a row.
Vettel now has 132 points, ahead of Alonso (96), Raikkonen (88), Hamilton (77) and Webber (69).
Results of the Canadian Grand Prix in Montreal
||Sebastian Vettel (GER/Red Bull) 1hr 32min 09.143sec|
||Fernando Alonso (ESP/Ferrari) at 16.200s|
||Lewis Hamilton (GBR/Mercedes) 17.500|
||Mark Webber (AUS/Red Bull-Renault) 28.000|
||Nico Rosberg (GER/Mercedes) 1:13.800|
||Jean-Eric Vergne (FRA/Toro Rosso) 2 laps|
||Paul di Resta (GBR/Force India) 2 laps|
||Felipe Massa (BRA/Ferrari) 2 laps|
||Kimi Raikkonen (FIN/Lotus) 2 laps|
||Adrian Sutil (GER/Force India) 2 laps|
||Sergio Pérez (MEX/McLaren) 2 laps|
||Jenson Button (GBR/McLaren) 2 laps|
||Romain Grosjean (FRA/Lotus) 2 laps|
||Valtteri Bottas (FIN/Williams) 2 laps|
||Daniel Ricciardo (AUS/Toro Rosso) 3 laps|
||Pastor Maldonado (VEN/Williams) 3 laps|
||Jules Bianchi (FRA/Marussia) 3 laps|
||Charles Pic (FRA/Caterham) 3 laps|
||Max Chilton (GBR/Marussia) 4 laps|
||Esteban Gutierrez (MEX/Sauber) 6 laps|
(With inputs from AFP)