Sebastian Vettel breezed to his second victory of the 2013 Formula 1 season in the Bahrain Grand Prix.
The world champion thrust his Red Bull to the front amid spectacular early dicing, then left the action behind.
In a repeat of the 2012 Sakhir podium, Lotus duo Kimi Raikkonen and Romain Grosjean made it through the field to second and third, the latter denying Paul di Resta a maiden F1 podium with just six laps to go.
Vettel was in a hurry to hit the front from the outset.
He forced polesitter Nico Rosberg to defend heavily off the line, and although Fernando Alonso managed to get his Ferrari between them around the outside, Vettel surged back into second with a bold move at Turn 5.
Vettel then pounced on Rosberg's Mercedes into Turn 4 on lap two, only to run wide. Next time around he made the move stick, and thereafter inched away towards an ever-more certain victory.
Alonso was soon up to second but his DRS flap jammed open. He made an emergency pitstop to fix it, but the problem reoccurred. By lap nine, he was 19th, had made two pitstops and knew he would be without DRS all afternoon.
With Alonso out of contention, the best of the rest battle became a contest between di Resta and Raikkonen, both two-stopping compared to most frontrunners' three.
Di Resta looked to be best-placed until approaching their final stops, when Raikkonen slipped past him just before pitting, and then built an advantage on his fresh tyres.
Force India remained on course for third for a while, but Grosjean was looming. The three-stopping Frenchman saved his medium tyres for the final stint and was able to hunt down and pass di Resta, who had to settle for a career-best fourth.
The rest of the top 10 featured wild racing all afternoon, with an abundance of side by side and wheel to wheel action as different strategies unfolded and different cars found pace at different junctures.
Lewis Hamilton crept forward after a low-key start and finally grabbed fifth.
Sergio Perez produced by far his most combative performance for McLaren yet. He was embroiled in a long dice with team-mate Jenson Button and the fading Rosberg, which featured contact between the McLarens and anxious radio messages on more than one occasion.
Despite losing a front wing endplate against his team-mate's car, Perez finished sixth, joining Hamilton in passing Mark Webber on the final lap.
Webber had been a podium threat for a spell, before falling back on his final set of tyres.
Alonso fought through to eighth despite his lack of DRS, with Rosberg and Button forced to four-stop and ending up ninth and 10th.
Felipe Massa suffered two right rear punctures and was only 15th. He had also made contact with Adrian Sutil on lap one, causing a puncture for the Force India driver, who made it back up to 13th.
PROVISIONAL RACE RESULTS
The Bahrain Grand Prix
57 laps; 308.405km;
Pos Driver Team Time/Gap
1. Vettel Red Bull-Renault 57 laps
2. Raikkonen Lotus-Renault + 9.1s
3. Grosjean Lotus-Renault + 19.5s
4. Di Resta Force India-Mercedes + 21.7s
5. Hamilton Mercedes + 35.2s
6. Perez McLaren-Mercedes + 35.9s
7. Webber Red Bull-Renault + 37.2s
8. Alonso Ferrari + 37.5s
9. Rosberg Mercedes + 41.1s
10. Button McLaren-Mercedes + 46.6s
11. Maldonado Williams-Renault + 1m06.4s
12. Hulkenberg Sauber-Ferrari + 1m12.9s
13. Sutil Force India-Mercedes + 1m16.7s
14. Bottas Williams-Renault + 1m21.5s
15. Massa Ferrari + 1m26.3s
16. Ricciardo Toro Rosso-Ferrari + 1 lap
17. Pic Caterham-Renault + 1 lap
18. Gutierrez Sauber-Ferrari + 1 lap
19. Bianchi Marussia-Cosworth + 1 lap
20. Chilton Marussia-Cosworth + 1 lap
21. van der Garde Caterham-Renault + 2 laps
Driver Team On lap
Vergne Toro Rosso-Ferrari 16
Fastest lap: Vettel, 1m36.961s
World Championship standings, round 4:
1. Vettel 77 1. Red Bull-Renault 109
2. Raikkonen 67 2. Lotus-Renault 93
3. Hamilton 50 3. Ferrari 77
4. Alonso 47 4. Mercedes 64
5. Webber 32 5. Force India-Mercedes 26
6. Massa 30 6. McLaren-Mercedes 23
7. Grosjean 26 7. Toro Rosso-Ferrari 7
8. Di Resta 20 8. Sauber-Ferrari 5
9. Rosberg 14
10. Button 13
11. Perez 10
12. Ricciardo 6
13. Sutil 6
14. Hulkenberg 5
15. Vergne 1
All timing unofficial