Lewis Hamilton prevailed in a race-long battle with Sebastian Vettel to win an entertaining Spanish Grand Prix.
The three-time world champion was forced to come from behind having lost out to Vettel's Ferrari during the opening stint of 66 lap race at the Circuit de Catalunya.
However, a slick two stop strategy saw Hamilton equipped with the softer, faster tyres for the last stint, which ultimately proved the difference against Vettel on the medium compound.
Hamilton took the lead with a pass on Vettel as the race reached its final third to set up the victory.
Vettel had an opportunity to challenge in the final laps as Hamilton's tyres degraded, but had to settle for second, 3.4s adrift.
The final place on the podium was filled by Red Bull's Daniel Ricciardo as the Australian scored his first rostrum of the year.
Ricciardo endured a lonely race with his RB13 outclassed by Mercedes and Ferrari, finishing more than minute behind.
Hamilton's victory has seen him close to within six points of Vettel in the championship standings.
It proved to be a frantic start as Vettel managed to out drag Hamilton to take the lead at Turn 1, while chaos ensued behind.
Mercedes' Valtteri Bottas dived down the inside at the corner but touched the right rear wheel of Kimi Raikkonen's Ferrari, who in turn then collided with Red Bull's Max Verstappen on his outside.
As a result, Raikkonen (broken steering) and Verstappen (damaged suspension) retired on the spot.
The action continued seconds later as Felipe Massa (Williams) touched McLaren's Fernando Alonso, forcing the two-time world champion through the Turn 2 gravel trap, dropping him from seventh to 11th position.
Stewards investigated both incidents before deeming neither required any sanctions.
Vettel stormed into a healthy lead from Hamilton before electing to make his first stop on lap 14, switching to a fresher set of soft compound tyres.
Now in the lead, Hamilton managed to extend his opening stint for eight more laps before he ducked into the pits for the slower more durable medium tyres.
He rejoined behind Vettel and Mercedes team-mate Bottas, who was yet to stop.
Bottas, with his soft tyres struggling for grip, held up Vettel for several laps before the German jumped into the lead, while Hamilton soon passed his ailing team-mate.
The intriguing battle for the victory took another twist when Hamilton pitted under the Virtual Safety Car on lap 37, which was caused by Stoffel Vandoorne, who turned in on Massa at Turn 1, breaking his steering.
Vettel soon pitted a lap later which placed him narrowly ahead of Hamilton, although the Ferrari driver was utilising the slower medium tyres compared to his soft tyre shod rival.
Hamilton swarmed all over the rear of Vettel before completing a move for the lead around the outside of the Ferrari at Turn 1, with 22 laps remaining.
The Brit then maintained the advantage all the way to the chequered flag.
Meanwhile, Bottas suffered an engine failure which handed the final place on the podium to Red Bull's Daniel Ricciardo.
The Australian endured a lonely race in fourth as Red Bull struggled for outright pace.
Force India outlined their speed with Sergio Perez heading his rookie team-mate Esteban Ocon for fourth.
Renault's Nico Hulkenberg produced a faultless drive to finish sixth, while Sauber's Pascal Wherein impressed on a one stop strategy to cross the finish line in seventh.
Carlos Sainz scored points in front of his home crowd in eighth, while Kevin Magnussen (Haas F1) surrendered ninth after suffering a puncture on the penultimate lap following contact with Daniil Kvyat.
Kvyat, who started from the final row of the grid, inherited ninth while the top 10 was completed by Romain Grosjean (Haas F1).
Alonso was unable to recover from his opening lap drama as he finished in 12th behind Marcus Ericsson (Sauber).
The championship continues at Monaco from May 25-28.
Result: Formula 1 Spanish Grand Prix
Pos | Driver | Car/Engine | Laps | Time/Gap |
1 | Lewis Hamilton | Mercedes | 66 | 66 Laps |
2 | Sebastian Vettel | Ferrari | 66 | +3.490s |
3 | Daniel Ricciardo | Red Bull/Renault | 66 | +1:13.978s |
4 | Sergio Perez | Force India/Mercedes | 65 | 1 Lap |
5 | Esteban Ocon | Force India/Mercedes | 65 | 1 Lap |
6 | Nico Hulkenberg | Renault | 65 | 1 Lap |
7 | Pascal Wehrlein | Sauber/Ferrari | 65 | 1 Lap |
8 | Carlos Sainz | Toro Rosso/Renault | 65 | 1 Lap |
9 | Daniil Kvyat | Toro Rosso/Renault | 65 | 1 Lap |
10 | Romain Grosjean | Haas/Ferrari | 65 | 1 Lap |
11 | Marcus Ericsson | Sauber/Ferrari | 64 | 2 Laps |
12 | Fernando Alonso | McLaren/Honda | 64 | 2 Laps |
13 | Felipe Massa | Williams/Mercedes | 64 | 2 Laps |
14 | Kevin Magnussen | Haas/Ferrari | 64 | 2 Laps |
15 | Jolyon Palmer | Renault | 64 | 2 Laps |
16 | Lance Stroll | Williams/Mercedes | 64 | 2 Laps |
DNF | Valtteri Bottas | Mercedes | 38 | Power Unit |
DNF | Stoffel Vandoorne | McLaren/Honda | 32 | Collision |
DNF | Max Verstappen | Red Bull/Renault | 1 | Collision |
DNF | Kimi Raikkonen | Ferrari | 0 | Collision |
Championship Standings
Position | Driver | Points |
1 | Sebastian Vettel | 104 |
2 | Lewis Hamilton | 98 |
3 | Valtteri Bottas | 63 |
4 | Kimi Raikkonen | 49 |
5 | Daniel Ricciardo | 37 |
6 | Max Verstappen | 35 |
7 | Sergio Perez | 34 |
8 | Esteban Ocon | 19 |
9 | Felipe Massa | 18 |
10 | Carlos Sainz | 15 |
11 | Nico Hulkenberg | 14 |
12 | Pascal Wehrlein | 6 |
13 | Romain Grosjean | 5 |
14 | Kevin Magnussen | 4 |
15 | Daniil Kvyat | 4 |
16 | Marcus Ericsson | 0 |
17 | Lance Stroll | 0 |
18 | Fernando Alonso | 0 |
19 | Antonio Giovinazzi | 0 |
20 | Jolyon Palmer | 0 |
21 | Stoffel Vandoorne | 0 |