Valtteri Bottas fended off a late charge from four-time world champion Sebastian Vettel to secure his first Formula 1 victory in the Russian Grand Prix at Sochi.
The Mercedes driver crossed the line just 0.617 seconds ahead of Vettel’s Ferrari with Kimi Raikkonen taking his first podium of the season with third.
Lewis Hamilton finished a disappointing fourth position.
Bottas made a storming start from third on the grid, benefiting from a slow-starting Raikkonen and then passing Vettel on the run to Turn 2 to take the lead.
The race was then neutralised shortly after when the safety car was deployed following a collision between Romain Grosjean and Jolyon Palmer at Turn 2.
At the restart, Bottas put the hammer down and gradually went about building up a lead over Vettel that grew to just over four seconds.
Bottas caught traffic ahead of the pitstops, allowing Vettel to cut the gap to 2.5 seconds before Mercedes called Bottas in at the end of lap 27 of 52 to swap ultra-softs for super-softs.
Vettel stayed out for an extra seven laps, with his pace remaining competitive, and rejoined just over four seconds adrift of Bottas following his stop for the super-softs.
Championship leader Vettel slowly chipped away at that, getting the gap down to just under a second at one stage to set up a grandstand finish.
But Bottas, who asked for “less talking” on the team radio in the closing laps, kept his composure to fend off Vettel and take his first victory in his 81st Formula 1 start.
Hamilton had a frustrating race, making a good start initially but struggling in the second phase of acceleration as he stayed in fourth.
The three-time world champion complained consistently that his car was overheating in the first half of the race and after the pit-stops, he was unable to catch Raikkonen and ended up a distant fourth position.
Max Verstappen was out on his own, too, in fifth, well adrift of the leading quartet but comfortably ahead of Sergio Perez.
Verstappen’s Red Bull team-mate Daniel Ricciardo retired with an early rear brake problem.
Force India scored points with both cars for the fourth race in succession as Esteban Ocon took seventh behind team-mate Perez.
Nico Hulkenberg was eighth, with Felipe Massa on-course for sixth before he was forced to make a second pit-stop late on because of a slow puncture that dropped him to ninth.
Carlos Sainz completed the top ten.
Williams racer Lance Stroll finished his first race, just missing out on a point in P11 after a first-lap spin.
It was a miserable weekend for McLaren, with Fernando Alonso failing to start the race after stopping his car at the entry to the pits on the formation lap.
Honda suspects the loss of power was down to an ERS issue, but is still investigating.
The other McLaren of Stoffel Vandoorne was P14, ahead of the two Saubers of Marcus Ericsson and Pascal Wehrlein.
So not a thrilling Russian Grand Prix, with a lack of overtaking. Valtteri Bottas takes a well deserved race victory and resisting the huge pressure from a four-time champion was impressive.
Russian Grand Prix race results, after 52 laps:
1 Valtteri Bottas Mercedes 1h28m08.743s
2 Sebastian Vettel Ferrari 0.617s
3 Kimi Raikkonen Ferrari 11.000s
4 Lewis Hamilton Mercedes 36.320s
5 Max Verstappen Red Bull-Renault 1m00.416s
6 Sergio Perez Force India-Mercedes 1m26.788s
7 Esteban Ocon Force India-Mercedes 1m35.004s
8 Nico Hulkenberg Renault 1m36.188s
9 Felipe Massa Williams-Mercedes 1 Lap
10 Carlos Sainz Toro Rosso-Renault 1 Lap
11 Lance Stroll Williams/Mercedes 1 Lap
12 Daniil Kvyat Toro Rosso-Renault 1 Lap
13 Kevin Magnussen Haas-Ferrari 1 Lap
14 Stoffel Vandoorne McLaren-Honda 1 Lap
15 Marcus Ericsson Sauber-Ferrari 1 Lap
16 Pascal Wehrlein Sauber-Ferrari 1 Lap
– Daniel Ricciardo Red Bull-Renault Brakes
– Romain Grosjean Haas-Ferrari Collision
– Fernando Alonso McLaren-Honda Not started
– Jolyon Palmer Renault Collision
1 Sebastian Vettel 86
2 Lewis Hamilton 73
3 Valtteri Bottas 63
4 Kimi Raikkonen 49
5 Max Verstappen 35
6 Daniel Ricciardo 22
7 Sergio Perez 22
8 Felipe Massa 18
9 Carlos Sainz 11
10 Esteban Ocon 9
11 Nico Hulkenberg 6
12 Romain Grosjean 4
13 Kevin Magnussen 4
14 Daniil Kvyat 2
15 Pascal Wehrlein 0
16 Lance Stroll 0
17 Antonio Giovinazzi 0
18 Jolyon Palmer 0
19 Stoffel Vandoorne 0
20 Fernando Alonso 0
21 Marcus Ericsson 0
1 Mercedes 136
2 Ferrari 135
3 Red Bull-Renault 57
4 Force India-Mercedes 31
5 Williams-Mercedes 18
6 Toro Rosso-Renault 13
7 Haas-Ferrari 8
8 Renault 6
9 Sauber-Ferrari 0
10 McLaren/Honda 0