Kimi Raikkonen played a two-stop strategy to perfection to beat Fernando Alonso to victory in an enthralling Australian Grand Prix.
All predictions of tedious Red Bull domination proved way off the mark, as Sebastian Vettel finished third, overshadowed by the Lotus and Ferrari.
The champion's team-mate Mark Webber was only sixth after a poor start, behind Felipe Massa's Ferrari and Lewis Hamilton's Mercedes, while Force India driver Adrian Sutil also led for long periods.
The superiority Red Bull had displayed in all the weekend's dry running so far was never evident in the race.
Webber immediately plunged outside the top five with a poor start, and Vettel was unable to get away from the fast-starting Massa and Alonso, who both passed Hamilton on lap one.
Raikkonen overtook the Mercedes soon afterwards, and then closed in on Vettel, Massa and Alonso to make a four-car lead train.
All the frontrunners pitted very early to get rid of their fragile super-soft tyres.
The order among that quartet remained the same into the second stint, but they had to fight their way through those running longer, including Sutil - who had started on mediums and found himself in the lead by lap 15.
Vettel, the Ferraris and Raikkonen were soon on the Force India's tail. They could not pass though, and Sutil was able to make his first pitstop at the same time as Vettel, Massa and Alonso made their second, bringing the Force India onto the same sequence as the victory contenders.
Alonso pitted a lap before Sutil and Vettel and was able to leapfrog both.
Sutil stayed ahead of Vettel in the pits but was overtaken into Turn 3 a lap later. Vettel could not put any pressure on Alonso however, even as the Ferrari had to battle through drivers on other strategies - including Hamilton, with whom the Spaniard had a spectacular dice before getting clear.
By this time, Raikkonen's strategy had come into play.
He stayed out until lap 34, a dozen laps longer than the other leaders, making it clear that Lotus was going for a two-stop to their three.
That left him with a comfortable lead over Alonso and Vettel when they made their third stops, and although the Ferrari initially began carving chunks from the Lotus's advantage, once Alonso had used his new-tyre grip, the gap stabilised.
Raikkonen was therefore able to claim victory by 12 seconds, as Alonso pulled 10s clear of Vettel.
Massa faded in fourth after a very strong first half of the race.
Hamilton was next up, having had to abandon his intended two-stop strategy and pit for a third time. Webber made a quiet recovery to sixth, just behind Hamilton, whose team-mate Nico Rosberg retired with electrical problems.
Sutil stayed with the leaders until he finally had to take on super-softs with 12 laps to go. They did not last as he had hoped, and Sutil had to be content with seventh, just ahead of team-mate Paul di Resta.
Jenson Button finished ninth for McLaren, while Romain Grosjean completed the scorers, holding off Sergio Perez and Jean-Eric Vergne.
Nico Hulkenberg failed to take the start due to a pre-race fuel system problem on his Sauber. Pastor Maldonado spun off at Turn 1 before half-distance, and Daniel Ricciardo retired a sick-sounding Toro Rosso.
Jules Bianchi dominated the backmarker pack in 15th.
Pos Driver Team Time/Gap
1. Kimi Raikkonen Lotus-Renault 1h30m03.225s
2. Fernando Alonso Ferrari + 12.451s
3. Sebastian Vettel Red Bull-Renault + 22.346s
4. Felipe Massa Ferrari + 33.577s
5. Lewis Hamilton Mercedes + 45.561s
6. Mark Webber Red Bull-Renault + 46.800s
7. Adrian Sutil Force India-Mercedes + 1m05.068s
8. Paul di Resta Force India-Mercedes + 1m08.449s
9. Jenson Button McLaren-Mercedes + 1m21.630s
10. Romain Grosjean Lotus-Renault + 1m22.759s
11. Sergio Perez McLaren-Mercedes + 1m23.367s
12. Jean-Eric Vergne Toro Rosso-Ferrari + 1m23.857s
13. Esteban Gutierrez Sauber-Ferrari + 1 lap
14. Valtteri Bottas Williams-Renault + 1 lap
15. Jules Bianchi Marussia-Cosworth + 1 lap
16. Charles Pic Caterham-Renault + 2 laps
17. Max Chilton Marussia-Cosworth + 2 laps
18. Giedo van der Garde Caterham-Renault + 2 laps