Ferrari's Fernando Alonso charged through the pack to take his second GP victory of the year, and his second on home soil at the European Grand Prix on the streets of Valencia.
Webber's teammate Sebastian Vettel looked set for his second win and his third at Valencia, when it all went wrong.
Valencia once again turned on beautiful clear skies for the European Grand Prix.
The mixed-up grid was sure to produce plenty of action - Maldonado was a long way into the top ten, but with fewer sets of tyres than some of those around - and behind - him.
Alonso and Schumacher were both outside of the top ten and had free tyre choice, and Mark Webber was so far back he may as well have been on the back row but with heaps of tyres to play with.
Kamui Kobayashi, a keen starter, was also at the pointy end and the Lotus practice pace from Friday bode very well for the black and gold cars.
Vettel got a fantastic start, Lewis Hamilton having to defend Maldonado who was then completely outfoxed by Romain Grosjean down the inside of turn one. Kobayashi leapt foward into fourth place while the Williams driver went backwards with Raikkonen.
Rosberg and Schumacher both lost out while the Ferraris surged ahead, Alonso having a big go on Hulkenberg at the hairpin. Mark Webber's start got him ahead of Kovalainen's Caterham.
Raikkonen wanted to ensure he was fighting for the lead at the end of the race and had a breathtaking - if short - battle with Pastor Maldonado who robustly defended his line which would become a theme for the afternoon.
Meanwhile up front, Vettel had a 4.5s lead on Lewis Hamilton at the start of lap 3.
By the time things had settled, Raikkonen was sixth, with Hulkenberg right behind and Alonso eighth. Paul di Resta was in all sorts of trouble, the team telling him to save brakes and tyres and that his rear brakes were overheating.
On lap ten, Romain Grosjean got into the slipstream of Hamilton's McLaren, pulling off a spectacular pass around the outside. Grosjean pulled a gap from the Briton and started after Vettel to stop the German from pulling out a pit stop's worth of a lead.
Massa pitted on lap 15 for the option tyre, finding himself on a slightly different strategy to his teammate who was chasing the Force India of Nico Hulkenberg.
Raikkonen drew up behind Maldonado who was in no mood to be overtaken, forcing Raikkonen to outbrake himself. On the next lap, Kimi decided he was in no mood to be stuck behind the Venzuelan and forced his way by, again leaping forward.
Behind them, Alonso quickly caught and passed Maldonado and set off after Raikkonen. Raikkonen pitted and made it out in front of Kobayashi, a brilliant manoeuvre by the Lotus team.
Vettel pitted on lap 17, with Grosjean behind him, clearly on the same strategy but with a lot of work to do. Vettel's third win in a row at Valencia was looking pretty good.
Webber had worked his way to eighth but hadn't yet stopped to change to the softer prime tyre. Alonso carved past on his new tyres and then mugged Senna. His next target was a slow-moving Michael Schumacher.
Schumacher had a train of cars behind him, all squabbling over his position. His tyres had clearly had it but he fought gamely with the Williams of Senna. Webber called time on that particular battle and pitted while Raikkonen went after Senna.
Bruno Senna and Kamui Kobayashi came together soon after Raikkonen got past. Kobayashi spied a gap and put his Sauber down the inside of the Williams who swept across the track and collected the Japanese driver. Senna spun while Kobayashi's front wing broke and both had to pit. Senna later got a drive-through penalty.
Alonso continued his forward march, making it into fourth place by lap 22, taking a struggling Paul di Resta with ease.
Grosjean was desperately trying to maintain the gap behind Vettel having made it into second during the pit stops owing to the Frenchman's quicker pace behind the McLaren.
After Webber stopped and the field had shaken out, he stayed with Michael Schumacher who his team had failed to jump during the pit-stops.
Vettel's lead evaporated when Jean Eric Vergne and Heikki Kovalainen's battle ended in tears, the Finn's front left being soundly clouted by the Toro Rosso's left rear in an amateurish move from the Frenchman - for which he was handed a €25000 fine and a ten-place grid penalty for the British Grand Prix.
Debris on the road from the Toro Rosso's chassis caused a Safety Car interruption, Grosjean pitting immediately from second, with Hamilton, Alonso, Raikkonen and Maldonado came in behind.
Hamilton had a horrendous stop, with Alonso and Raikkonen driving past as the team struggled to get his front tyres on after the front jack failed.
Webber inherited ninth as a result of the safety car. Both he and Michael Schumacher were looking to stop once and every lap behind the Mercedes SLS meant one lap less of tyre-torturing racing. Ricciardo incredibly, was in third.
The Safety Car finally pulled in to the pits on lap 33 and Grosjean was immediately in the clutches of Ferrari's Ferndando Alonso. In the same place where the Lotus driver had mugged Maldonado, Alonso pulled the opposite move around the outside.
On the same lap, Massa had a coming together with Kobayashi causing a puncture but - sensationally - Vettel's Red Bull slowed. The man who started 11th, Alonso, found himself in the lead. Kobayashi copped a five-place grid penalty for the next race for his indiscretion.
Massa's stop was almost as comedic as Hamilton's with Ferrari fitting mismatched tyres to the front.
Alonso was not having an easy time at the front, with Grosjean snapping at his heels, Hamilton recovering to third after his terrible tyre stop.
The two Australians, Webber and Ricciardo battled for sixth on lap 37, the Red Bull trying to follow Schumacher through.
Maldonado pushed Webber wide as Ricciardo pitted, Webber losing not just to Maldonado but to both Force Indias. Webber pitted on the following lap but probably wished he'd just followed Ricciardo in to the pits.
One small consolation was that he made it out in front of the Toro Rosso.
On lap 41, Romain Grosjean's Lotus ground to crawl and then stopped, the car left stranded with a decidedly low-tech alternator failure.
This left Alonso with a four second lead over Hamilton's McLaren and Kimi Raikkonen returning to the reckoning behind Hamilton. The podium looked to be composed entirely of world champions.
Daniel Ricciardo threw away his fine race by getting airborne after clashing with Vitaly Petrov.
Hamilton began taking chunks out of Alonso's lead with seven laps to go, with Raikkonen gamely hanging on behind him, the top three covered by just five seconds.
Webber and Schumacher formed a double act further down the pack, carving through the field of one-stoppers.
On lap 55, Hamilton had a huge lock-up allowing Raikkonen to get alongside in the DRS zone. A few corners later Kimi went around the outside and took off. Maldonado then tried to take the McLaren on the main straight but Hamilton defended well to keep the place.
Hamilton had no rear grip and while trying to defend was pitched into the tyre wall by Pastor Maldonado. Maldonado had been off the race track as a result of Hamilton's spirited defence.
The Venezuelan lost his front wing and was given a post-race drive through penalty of twenty seconds, robbing him of the point he eventually scored.
Webber and Schumacher found themselves fighting for third, something the Australian must have thought impossible just a few laps earlier.
Alonso crossed the line first, lapping his teammate in the process. Raikkonen came home behind and Michael Schumacher finished on the podium, with Webber close behind.
Alonso grabbed his second win of the season and his second on home soil, the Spaniard carrying a Spanish flag until his Ferrari stopped with a problem out on the track.
Alonso jumped from the car and bowed down in front of his adoring home crowd while Michael Schumacher was congratulated by his team in parc ferme. Kimi Raikkonen's second almost seemed an anti-climax for the Finn.
Webber's fourth place was both unexpected and welcome and puts him second in the driver's championship.
"It was a crazy day today - but I got points, so I'm happy with that."
1. Fernando Alonso - Spain - Ferrari-Ferrari - 1hr 44m 16.449s 57 laps
2. Kimi Raikkonen - Finland - Lotus-Renault - +0m 06.4s
3. Michael Schumacher - Germany - Mercedes-Mercedes +0m 12.6s
4. Mark Webber - Australia - Red Bull-Renault +0m 13.6s
5. Nico Hulkenberg - Germany - Force India-Mercedes +0m 19.9s
6. Nico Rosberg - Germany - Mercedes-Mercedes +0m 21.1s
7. Paul di Resta - Britain - Force India-Mercedes +0m 22.8s
8. Jenson Button - Britain - McLaren-Mercedes +0m 24.6s
9. Sergio Perez - Mexico - Sauber-Ferrari - +0m 27.7s
10. Bruno Senna - Brazil - Williams-Renault +0m 35.9s
11. Daniel Ricciardo - Australia - Toro Rosso-Ferrari +0m 37.0s
12. Pastor Maldonado - Venezuela Williams-Renault +0m 54.6s*
13. Vitaly Petrov - Russia - Caterham-Renault +1m 15.8s
14. Heikki Kovalainen - Finland - Caterham-Renault +1m 34.6s
15. Charles Pic - France - Marussia -Cosworth +1m 36.5s
16. Felipe Massa - Brazil - Ferrari-Ferrari - +1 lap
17. Pedro de la Rosa - Spain - HRT-Cosworth - +1 lap
18. Narain Karthikeyan - India - HRT-Cosworth - +1 lap
19. Lewis Hamilton - Britain - McLaren-Mercedes +2 laps
Rtd. Romain Grosjean - France - Lotus-Renault - 40 laps completed
Rtd. Sebastian Vettel - Germany Red Bull-Renault 33 laps completed
Rtd. Kamui Kobayashi - Japan - Sauber-Ferrari - 33 laps completed**
Rtd. Jean-Eric Vergne - France - Toro Rosso - Ferrari 26 laps completed***
DNS. Timo Glock - Germany Marussia - Cosworth