Reigning world champion Lewis Hamilton took advantage of a pit-stop blunder from Red Bull to belatedly claim his first win of 2016 at an absorbing Monaco Grand Prix.
As heavy rain gave way to bright sunshine in Monte Carlo, a fast-drying track provided thrilling action - with a host of differing tyre strategies used in a race that began with seven laps behind the safety car.
Pole-sitters had won eight of the previous 10 grands prix at this venue, a run Red Bull's Daniel Ricciardo looked set to extend as he opened up a healthy lead early on, with Hamilton stuck behind the slower Mercedes of team-mate and championship leader Nico Rosberg.
However, Rosberg soon allowed Hamilton past and the Briton's decision to stay out longer on wet tyres - in order to switch straight to slicks without a stint on intermediates - paid off handsomely as Ricciardo endured misery on his second stop.
The Australian came in for super-softs after 32 laps, but an apparent breakdown in communication resulted in a brief delay before new tyres could be fitted and Ricciardo re-emerged just behind Hamilton.
Ricciardo came close to regaining the lead on lap 37 as Hamilton, on the new ultra-softs, briefly left a gap only to swiftly shut the door in a move that infuriated his rival.
Yet the Mercedes man was not to be denied as he secured victory for the first time since he was crowned world champion for a third time last October, with Force India's Sergio Perez pipping Sebastian Vettel to the final podium place before the heavens opened again.
Hamilton now trails Rosberg, who came home seventh, by 24 points in the drivers' championship, while Ricciardo is up to third - both men leapfrogging Kimi Raikkonen after the Finn retired on Sunday.
Saubers emulate Mercedes collision
A fortnight on from Hamilton and Rosberg dramatically ending each other's races in Spain, it was the turn of Sauber to see their two drivers make costly contact.
Felipe Nasr had started from the pit lane after suffering an engine failure and saw his dreadful weekend take a turn for the worse as he and Marcus Ericsson collided at Rascasse.
Verstappen impresses, then crashes
A shock winner in Catalunya last time out, Max Verstappen also started from the pit lane on Sunday having undergone changes to his car following a qualifying crash.
The teenager again showed why he is rated so highly with a series of daring passing moves and was the fastest man on the track at one stage.
However, his afternoon came to a premature end when he put his Red Bull into the barriers at Massanet.
IN THE POINTS
1. Lewis Hamilton (Mercedes)
2. Daniel Ricciardo (Red Bull) +7.252secs
3. Sergio Perez (Force India) +13.825s
4. Sebastian Vettel (Ferrari) +15.846s
5. Fernando Alonso (McLaren) +85.076s
6. Nico Hulkenberg (Force India) +92.999s
7. Nico Rosberg (Mercedes) +93.290s
8. Carlos Sainz (Toro Rosso) + 1 lap
9. Jenson Button (McLaren) + 1 lap
10. Felipe Massa (Williams) + 1 lap
1. Nico Rosberg (Mercedes) 106
2. Lewis Hamilton (Mercedes) 82 (+24)
3. Daniel Ricciardo (Red Bull) 66 (+40)
4. Kimi Raikkonen (Ferrari) 61 (+45)
5. Sebastian Vettel (Ferrari) 60 (+46)
1. Mercedes 188
2. Ferrari 121 (+67)
3. Red Bull 112 (+76)
4. Williams 66 (+122)
5. Force India 37 (+151)
The season continues with the Canadian Grand Prix in a fortnight's time. Hamilton won from pole in Montreal 12 months ago.