MONTREAL (Reuters) - McLaren's Lewis Hamilton stormed to a Canadian Grand Prix victory on Sunday to become a magnificent seventh winner in seven Formula One races this season and seize the championship lead.
The Briton had to mount a ferocious charge after his second pits top, banging in a series of fastest laps to reel in Red Bull's reigning world champion Sebastian Vettel and Ferrari's Fernando Alonso.
Frenchman Romain Grosjean was second in a Lotus, a career best, with Mexican Sergio Perez third in a Sauber after overtaking Alonso - a driver he may end up partnering next season if he continues to impress.
It was Hamilton's third win in Montreal, an island circuit where he took his first grand prix triumph in 2007, in five attempts.
The 2008 champion, who also stood on top of the podium in Canada in 2010, had his most worrying moments in the two pits tops - McLaren's weak point this season - but on the track he was unstoppable.
"What a great feeling, this is where I won my first Grand Prix and I knew today would be a tough, tough race but I loved every single minute of it," said Hamilton, who now has 88 points to Alonso's 86 and Vettel's 85.
Brandishing the British flag as he stepped out of the car after a gripping finale, he hugged his mechanics while girlfriend Nicole Scherzinger kissed his visor.
"It's been five years since I won here the first time but it feels just as good. It feels great to be on the top step, we never take it for granted," he said.
"This for me feels like one of the very best races I have had for a long time."
Vettel had started from pole, just like last year, and led the early part of the 70 lap race but lost pace over the final laps to finish fourth in a grand prix that his Red Bull team have yet to win.
The German was fortunate to get to the chequered flag after skimming the wall three laps from the end.
Spaniard Alonso, bidding to give resurgent Ferrari a victory on the 30th anniversary of the tragic death of former-Ferrari great Gilles Villeneuve but struggling on worn tyres at the finish, had to settle for fifth.
The race began under brilliant blue skies and threats by student protesters to disrupt the Grand Prix but heavy security at all entrance points to the island circuit made sure the race unfolded without incident.
On the track the race was also run without any major incidents, the safety car remaining parked - a rarity for Montreal - while the red flag was never waved.
Much of the 70 lap race was an enthralling battle between three world champions, Vettel, Alonso and Hamilton who all had turns at the front.
Vettel led from the start and remained in the lead until the first pit stops rejoining behind Alonso and Hamilton.
Hamilton pushed his way into the lead fighting off challenges from Red Bull and Ferrari until making his second pit stop while Alonso and Vettel continued despite McLaren assuring Hamilton that they would have to come in.
But with their tyres failing and pace slipping, Hamilton obeyed his team's instructions to 'give it everything' and reeled them in to give McLaren their second win of the campaign after Jenson Button's victory in Australia.
Button, who last year surged past Vettel on the final lap to claim a dramatic victory in a rain-hit race, was not a factor and finished 16th, baffled with his car's lack of pace.
Hamilton was joined on the podium by two youngsters both making their second appearances in the top three in this most unpredictable of seasons.
Grosjean, who rated the Gilles Villeneuve circuit his favourite after learning it with a video game, gave Lotus their fourth top three finish of the season.
"Starting 15th the last thing you would think about is to end up on the podium," said Perez, who had a second in Malaysia. "We went quite aggressive, the stops were very good and I managed to take over some cars with some difficult moves.
"It is the second time we get in the (podium) points and hopefully we can keep going."
Germany's Nico Rosberg was sixth, while his team mate Michael Schumacher had another miserable afternoon and retired with a rear wing failure.
Australian Mark Webber was seventh for Red Bull, Finland's Kimi Raikkonen took eighth place for Lotus and Japan's Kamui Kobayashi was ninth for Sauber.
Brazil's Felipe Massa took the final point for Ferrari.
Editing by Alan Baldwin