The Scuderia controlled the first half of the race, but a Sebastian Vettel power unit failure after both he and pole-sitter Charles Leclerc had made their first pit stops triggered a virtual safety car that allowed Hamilton and Bottas to make their sole pits stops for free, gifting the Briton the lead and victory.
It was an anticlimactic ending to a race that promised much tension early, with Ferrari teammates Vettel and Leclerc momentarily embroiled in a new chapter in their simmering intrateam rivalry.
Leclerc pulled cleanly off the line from pole, but Vettel immediately behind him got right into this slipstream to drag him down the 890-metre run to the first braking zone at turn two. The German muscled Hamilton out of the way to easily take the lead, with Hamilton dropping to third.
Racing was momentarily interrupted by a safety car — Romain Grosjean’s Haas required extrication from the barriers after tangling with Antonio Giovinazzi and Daniel Ricciardo — but Vettel aced the restart to keep Leclerc at bay. His Ferrari team, however, had other ideas, and two laps later it told the leading German to allow his teammate to pass.
However, Vettel was recalcitrant in the face of team orders. At first he pleaded with his engineer to wait until the pair had built a greater gap to the following Mercedes drivers, but soon he was setting fastest laps regardless to force the issue, leaving Leclerc behind.
The pit wall relented, apparently agreeing with Vettel that Hamilton, just 2.5 seconds behind, was still too great a threat to execute the intra-team tactic. Leclerc radioed that he respected the decision, though he was at pains to point out that he hadn’t defended his teammate’s lunge for the lead at the first braking zone.
But Vettel wasn’t satisfied with merely maintain the lead. He continued to power into the distance, breaking away from the sister car to deny him the slipstream, hindering Leclerc’s ability to follow him further up the road. It meant Hamilton was able to keep touch with the Monegasque with a margin of just three seconds.
Ferrari left its drivers alone until lap 22, when Leclerc made his sole pit stop for a fresh set of medium tyres, but the team didn’t follow suit with Vettel on the following lap despite the leader’s pace slowing substantially on his worn rubber. It wasn’t until lap 26 that he was allowed to stop, but by then he’d lost so much time that he rejoined the race behind Leclerc.
It was a shrewd way for the team to switch its drivers without asking for their cooperation a second time, but if Vettel was disappointed, he didn’t have time to express as much — his power unit failed on his out-lap, triggering a virtual safety car.
It was a godsend for Hamilton and Bottas, now in first and second. Both made their sole stops with the field’s pace slowed to allow marshals to recover the stricken Ferrari, allowing Lewis to maintain the lead and Bottas to rejoin in second place, now on the fastest soft-compound tyre.
It looked like a disaster for Ferrari, but the race had one more curveball to throw: George Russell’s Williams suffered a technical failure and speared into the wall, deploying a full safety car.
Ferrari bided its time, and after two laps behind the pace car called Leclerc in for a second stop, switching him to a set of soft-compound tyres. He dropped to third behind Bottas but was shod with the same rubber as the leaders, giving him a fighting chance to regain the lead when the race resumed with 20 laps remaining.
But Bottas offered an obdurate defence, allowing Hamilton to set fastest laps in the lead. After 10 laps he’d built a four-second advantage, and with Leclerc unable to break Bottas, the podium order was set.
Hamilton took the chequered flag to extend his championship lead to 73 points with a bonus point for fastest lap.
“Just an incredible job from all the guys here this weekend for not giving up, for trying new things, for pushing forward and never giving up,” Hamilton said. “We haven’t given up. We keep on pushing. The car was incredible today.
“I try not to think too much about the championship — one race at a time, one step at a time.”
Bottas was indifferent about his second-place finish, conceding he and the team needed to improve their qualifying form to start races on the front foot.
“I think starting fourth and finishing second isn’t too bad,” he said. “We saw we should’ve had good race pace today and we believed we could do it.
“We need to raise our game in qualifying now, but race pace is okay.”
Leclerc was left to rue another lost opportunity to add to his two career victories but accepted Ferrari still had improvements to make on race execution.
“At least we are quite consistent,” he said. “Mercedes are still very quick in the race runs — a lot quicker compared to qualifying — so we need to work on that and understand and improve on that in the next races.”
“We definitely had the pace to finish in front of Valtteri, but it was quite tricky to follow. Third today is the best we could’ve done unfortunately with the safety car.”
Asked about his radio spars with the team over swapping places with Vettel early in the race, the Monegasque remained coy.
“I will always trust the team,” he said. “The tactic was me giving the slipstream to be one-two at the end of the straight, which happened, but then I don’t know. I need to speak with the team to know better the situation.”
Red Bull Racing finished fourth and fifth. Max Verstappen rose from ninth to fifth early in the race and capitalised on Vettel’s non-finish to take the flag fourth, while Alex Albon spectacularly finished fifth after starting from the pit lane.
The Thai driver crashed in qualifying, having never looked particularly comfortable at the Sochi track, but an aggressive drive starting on the medium tyre and finishing on the soft enabled him to race to collect 10 points for his efforts.
Carlos Sainz finished sixth comfortably at the head of the midfield ahead of Racing Point’s Sergio Perez.
Lando Norris battled to eighth, capitalising on Kevin Magnussen receiving a five-place penalty for cutting the track on his way to ninth place, and Nico Hulkenberg took home the final point for 10th.