Cape Town - Daniel Ricciardo redressed the balance in Monaco as he turned pole position into that illusive first Monte Carlo win, made to work for it by an engine issue.
Two years ago Ricciardo was shattered when a botched pit stop cost him an almost-sure victory in Monaco. This year there were no such mistakes but there was an engine problem that cost him power down the straights.
The Aussie continued his trend of maintaining his start position through the opening lap as he led off the line, fending off Sebastian Vettel and Lewis Hamilton.
Hamilton was the first of the frontrunners to pit, coming in on lap 12 to swap his hypersoft Pirellis for a set of ultrasoft tyres. He came out behind Esteban Ocon in sixth but passed the Force India three laps later.
Vettel came in from second place on lap 16, four seconds down on Ricciardo at the time, and re-emerged in third, ahead of Bottas, who had yet to pit, and Hamilton.
Ricciardo was in a lap later, swapping his hypers for ultras. He returned to the track in the lead as Raikkonen pitted with Bottas also coming in.
After the stops the top five were: Ricciardo by 2.8s over Vettel followed by Hamilton, Raikkonen and Bottas. The latter was on a set of supersoft tyres to his rivals' ultrasofts.
Whether through baby sitting tyres or less pace than Ferrari, Vettel began to eat into Ricciardo's lead and cut the gap to 1.4s before the Aussie began to build it up again. "Looking after the tyres" was the message from Red Bull.
Drama hit Ricciardo on lap 28 as he reported "losing power" and Vettel closed up on his rear wing.
Meanwhile Raikkonen sat on Hamilton's tail while Bottas, having been almost six seconds down, closed up on the Ferrari. The trio, fighting for P3, were separated by less than three second.
Ricciardo continued to lead the grand prix while Vettel complained about a "blackout on the dash" and Hamilton was rather vocal about his tyre issues. Despite the latter's troubles he began to close the gap to Vettel who in turn got within a second of Ricciardo.
1 Daniel Ricciardo Red Bull 1:42.54.807
2 Sebastian Vettel Ferrari 7.336s
3 Lewis Hamilton Mercedes 17.013s
4 Kimi Raikkonen Ferrari 18.127s
5 Valtteri Bottas Mercedes 18.822s
6 Esteban Ocon Force India 23.667s
7 Pierre Gasly Toro Rosso 24.331s
8 Nico Hulkenberg Renault 24.839s
9 Max Verstappen Red Bull 25.317s
10 Carlos Sainz Renault 67.861s
11 Marcus Ericsson Sauber 69.066s
12 Sergio Perez Force India 70.102s
13 Kevin Magnussen Haas 73.914s
14 Stoffel Vandoorne McLaren 1 LAP
15 Romain Grosjean Haas 1 LA
16 Sergey Sirotkin Williams 1 LAP
17 Lance Stroll Williams 2 LAPS
Did not finish
Charles Leclerc Sauber crash
Brendon Hartley Toro Rosso crash
Fernando Alonso McLaren gearbox