Lewis Hamilton has won the Spanish Grand Prix, leading from start to finish after jumping teammate Valtteri Bottas off the line.
Bottas, who started from pole position, was under pressure from Sebastian Vettel and teammate Hamilton when the lights went out, and had to concede to the latter heading into Turn 1.
The Silver Arrows streaked away from the rest of the field, followed by Max Verstappen, who managed to get by Vettel around the outside of Turn 3 on the opening lap.
Ferrari was delivered a headache as Charles Leclerc closed in on Vettel, who was nursing a flat spot after locking up at the first corner.
On lap 12, Leclerc was let go by his teammate and started to pull a gap before Vettel peeled into the pits on lap 20 for the medium tyres.
Leclerc followed suit six laps later, but was fitted with the hard tyres rather than the mediums that Vettel recovered. In front, Mercedes pitted both cars and rejoined without coming under pressure.
Vettel was then handed fourth place after he caught up to Leclerc on the softer tyre, and Ferrari instructed Leclerc to swap positions.
Vettel made a second pit stop on lap 41 for another set of mediums, but the field was then neutralised when Lando Norris and Lance Stroll came together at Turn 1 on lap 47.
Both drivers were sent out of the race and the safety car was deployed while the cars were cleared and the track was stripped of the gravel that had been deposited on it from the incident.
With all drivers on fresh tyres, except Vettel and Verstappen who pitted a handful of laps before the safety car, the order within the top six didn't change, with Mercedes taking a fifth consecutive one-two finish.
Max Verstappen secured Red Bull's second podium finish of the season, with the first coming at the season-opening Grand Prix at Melbourne two months ago.
Ferrari came home in fourth and fifth, with Vettel leading Leclerc by over four seconds.
Kevin Magnussen claimed the 'best of the rest' position, but made contact with teammate Romain Grosjean in the latter stages of the race after the safety car restart.
Haas was on for seventh and eighth, but Grosjean slipped down to tenth place after getting overtaken by local favourite Carlos Sainz and the Toro Rosso of Daniil Kvyat.