Magnussen was fifth for Haas and Renault's Hulkenberg sixth followed by the McLarens of Alonso and Stoffel Vandoorne.
A frustrated Vettel finally burst past the defensive Hamilton, on his original tyres, to re-gain the lead on lap 26. He re-emerged in P3 place with Hamilton inheriting the lead from his teammate. Bottas, aided by his powerful Mercedes engine, its mystical "party mode" and the more durable medium tyres, was unable to overtake Vettel who was visibly struggling in the traction zones of every corner of the Bahrain International Circuit. The last few laps of the race were a treat to watch.
"Them going onto the medium tyre". The Frenchman was lapping with a damaged vehicle and held up the faster Haas before pitting himself. However, Ferrari changed their strategy following a disastrous pit stop for Kimi Raikkonen on Lap 36, in which he left early and clipped one of the crew members with the left-rear tire.
"As for the accident itself, all I know is that I moved when I saw the green light go on", he added.
Ferrari reported the mechanic was taken to hospital as fears grew of a broken leg. Ferrari was subsequently fined 50,000 euros ($61,400) for an unsafe release.
The Ferrari drivers were required to push for the rest of the race to counter Mercedes's long-game approach, and Vettel duly obliged. Vettel was nearly overtaken by Bottas on the last lap but made a crucial blocking move and won by only 0.6 seconds for his 49th career win.
Race stewards said that in Sunday's incident the auto was released "in a manner endangering team personnel and causing injury". They crossed the finish line first and second, with Hamilton third.
Real Madrid has best squad in Europe: Simeone
Real Madrid welcome Juventus to the Santiago Bernabeu on Wednesday for the second leg of their Champions League quarter-final. He played in Vitolo and then, after Navas had denied the winger, the French global cleverly followed to slide home.
Marcus Ericsson grabbed two points for Sauber by finishing ninth ahead of Esteban Ocon, who was 10th for Force India.
His team-mate Sergio Perez, and Brendon Hartley were both given 30-second penalties after the race for a mix-up on the formation lap, relegating them from P12 and P13 respectively to the bottom of the standings.
The driver was heavily criticised on social media for not offering more sympathy or support to his team mate, but he hit back at his haters, saying: "I don't see what happens".
"That was a lie".
As far back as the second round of pit stops, it looked as though Bottas had the win in the bag, but Vettel fought like the crafty champion he is to keep his position. "I didn't finish the race so it is not great".
"I tell you, these tyres were done!" "And it worked - but only just".