Kimi Raikkonen held off Fernando Alonso to take the first win of his Formula 1 comeback in an astonishing Abu Dhabi Grand Prix, as Sebastian Vettel made it through from last to third.
The result means Vettel's championship lead remains 10 points with two races to go, despite an incident-packed race for the Red Bull driver.
Raikkonen's victory is his first since he won the 2009 Belgian GP, the first for his Enstone-based team since the 2008 Japanese GP, and the first for a Lotus-branded squad since the 1987 United States GP.
Poleman Lewis Hamilton looked set to dominate for McLaren at first, escaping an early mistake that allowed Raikkonen to briefly get alongside him and then pulling away.
Pastor Maldonado held third, while Alonso muscled past the slow-starting Mark Webber for fourth with a bold outside line move at Turn 11 on the first lap.
The path seemed to be opening up quickly for Vettel, helped by first-lap carnage that saw the Force Indias tangle with Bruno Senna, and Nico Rosberg and Romain Grosjean collide.
The recovering Rosberg then caused the first safety car on lap nine when his Mercedes was violently launched over the back of Narain Karthikeyan's slowing HRT.
By that time Vettel was up to 13th, but during the caution period he ran off-track avoiding Daniel Ricciardo and smashed a marker board. This did terminal damage to a front wing already battered from contact with Senna, and Vettel had to pit.
Hamilton stayed ahead easily at the restart, only to drop out when his car ground to a halt with a mechanical problem on lap 19.
That left Raikkonen in charge, with Alonso the first of several drivers to pass a fading Maldonado before the pitstops. Webber's attempt to do likewise would see contact and a spin.
With Vettel having got a tyre change out of the way when replacing his front wing, he rose to second behind Raikkonen as others pitted. There was speculation among rivals that Vettel might try to keep his soft tyres alive until the end, but he pitted for fresh rubber and dropped to fourth behind Alonso and Jenson Button.
Another safety car then followed when a spectacular battle between Paul di Resta, Grosjean and Sergio Perez ended with contact between the latter pair and Grosjean's slowing car collecting the luckless Webber.
That closed Raikkonen, Alonso, Button and Vettel up for a 12-lap sprint to the finish.
Initially the pressure was on Alonso, but soon he was pulling clear of Button and mounting a late charge towards Raikkonen, as Vettel put huge pressure on the McLaren.
The champion eventually took third with four laps to go. Alonso was out of reach, though, the Ferrari finishing right on Raikkonen's tail.
Maldonado took fifth ahead of Kamui Kobayashi and Felipe Massa, who spun down the order while fighting with Webber.
Senna and di Resta recovered from their dramas to take eighth and ninth, with Ricciardo the final scorer.