Lewis Hamilton returned to winning ways as he held off Mercedes team-mate Nico Rosberg to win the Canadian Grand Prix.
- Related Content
The reigning world champion had missed out as Rosberg won in Spain and Monaco, with the latter victory handed to the German on a platter after a bad pit-stop call for Hamilton.
But the Brit was better than his title rival in Montreal as he recorded his fourth win at the Gilles Villeneuve Circuit, with Rosberg finishing a close second and Valtteri Bottas of Williams taking the final step on the podium.
Pointing his car to cover off Rosberg at the start, Hamilton got off well from pole position as everyone got through the opening corners without incident.
He then kept Rosberg at bay as the pair once again flexed their muscles to finish well clear of the rest of the pack.
The 37th win of his career moves Hamilton 17 points clear of Rosberg at the head of the drivers' championship and he was pleased to pick up the win after the trials in Monte Carlo.
"Did I need this? I think so," he said.
"I love Montreal. I love this track, I love this city and really just a fantastic weekend, great to get back onto the top step.
"I didn't feel I had the most comfortable balance and had some under-steer but I didn't feel under too much pressure. It was never too serious. It was a great race, I don't know what it was like to watch."
Rosberg admitted he had no answer to Hamilton as his search for three straight wins fell short.
"It was a good race against Lewis," he said.
"I was pushing like mad to put the pressure on but he didn't make a mistake so fair play. It was a good race but unfortunately I couldn't quite make it happen."
Sebastian Vettel, who is third in the championship, was no doubt the driver of the day as he went from 18th on the grid to finish fifth for Ferrari.
His team-mate Kimi Raikkonen had started third but lost out to Bottas and had to settle for fourth, with former Ferrari man Felipe Massa also progressing well through the field to take sixth for Williams.
Pastor Maldonado scored his first points of the season for Lotus as he came home seventh, with Romain Grosjean in 10th making it a good day for the team, while Nico Hulkenberg finished eighth for Force India and Red Bull scored minor points with Daniil Kvyat's ninth-place.
It certainly was not that way for the struggling McLaren outfit, with both Fernando Alonso and Jenson Button forced to retire after the former had hit out at the ongoing issues for the team over team radio before recording his third straight retirement.
Massa was the man making moves in the early stages, tussling with Ericsson before putting great overtaking manoeuvres on Ricciardo, Perez and Kvyat to move into the points-paying positions.
Button, who started at the back of the grid having sat out qualifying due to engine issues, served a drive-through penalty at the end of the opening lap having been hit with penalties for changing several key components in his McLaren.
Vettel, who was also at the wrong end of the field after technical problems in qualifying and a five-place penalty for a practice session misdemeanour, enjoyed a good start but came in at the end of lap seven as they tried a different strategy to the cars in front. However, a slow stop saw him drop to the back of the field.
He then ran over the curbs at the final turn as Alonso defended his 15th place, with the McLaren man eventually having to yield before the Spaniard hit out at his own team when asked to go into fuel-saving mode.
"Already I have big problems now," he said.
"Driving with this...looking like an amateur. So I race and then I concentrate on the fuel."
It proved not to be an issue as he was forced to retire on lap 47, with team-mate Button joining him in the garage 11 laps later to end a very disappointing weekend for the Woking marque.
Hamilton came in at the end of lap 29 with Rosberg running wide at turn 10, but he still managed to close to within two and a half seconds of the leader after their respective first stops.
The winner of the last two grands prix, Rosberg started to reel in Hamilton as he managed to switch on the soft compound tyres quicker than his title rival.
He was prevented from attacking Hamilton, however, as he was instructed to look after his brakes for 10 laps due to critical wear.
It was Rosberg's compatriot Vettel who was by far the quickest man on the track at that point, setting fastest laps following his second stop and moving up into the points.
Vettel continued his progression as he bullied his way past Hulkenberg, who spun as he avoided making contact with the Ferrari.
Grosjean was hit with a five-second time penalty after pulling in front of Will Steven's Manor whilst lapping but he did hang on to the final point.
Sergio Perez finished 11th for Force India, with the Toro Rosso of Carlos Sainz 12th ahead of the second Red Bull of Daniel Ricciardo, who was nowhere near matching the victory he collected here 12 months ago.
Marcus Ericsson took 14th for Sauber as Max Verstappen, having been also hit with two separate penalties before the race, finished 15th.
Felipe Nasr was 16th with Stevens the last man to finish down in 17th and his Manor team-mate Roberto Mehri retiring towards the end of the race.