Renault's Fernando Alonso won the European Grand Prix at the Nurburgring after long-time leader Kimi Raikkonen's McLaren crashed on the last lap.
EUROPEAN GP RESULT
1 F Alonso (Renault)
2 N Heidfeld (Williams)
3 R Barrichello (Ferrari)
4 D Coulthard (Red Bull)
5 M Schumacher (Ferrari)
6 G Fisichella (Renault)
7 JP Montoya (McLaren)
8 J Trulli (Toyota)
Raikkonen's car was crippled in the closing laps with a badly damaged right front tyre, which was sending strong vibrations through the suspension.
Raikkonen was just ahead of Alonso at the start of the last lap, only for the suspension to fail at the first corner.
Nick Heidfeld was second for Williams, ahead of Ferrari's Rubens Barrichello.
David Coulthard was fourth for Red Bull Racing, with world champion Michael Schumacher recovering from 10th on the grid to fifth in his Ferrari.
Giancarlo Fisichella drove an unobtrusively impressive race in his Renault to climb up to sixth after being forced to start from the pit lane when his car stalled on the grid.
Juan Pablo Montoya's McLaren and Jarno Trulli's Toyota took the final points-scoring positions.
Raikkonen took the lead at the start from pole-sitter Heidfeld and looked to be crusing to victory until he ran off the track on lap 30.
The Finn's barge board - an aerodynamic aid - was knocked off in the incident.
That reduced the McLaren's grip and may have contributed to Raikkonen badly damaging a tyre when he locked his brakes passing a backmarker five laps later.
Although Alonso closed the gap dramatically, it looked as though the Finn had just done enough, only for his car to spin into a dramatic retirement.
Raikkonen's exit was a massive boost for Alonso's world championship chances.
Raikkonen leads at the start, with Alonso down in fifth place
The Spaniard, who has won four races this year, now holds a daunting 32-point lead over Raikkonen rather than seeing his advantage cut to 20.
"I was happy with the second place but we were so quick and pushing McLaren and Kimi all the way and they eventually had a tyre failure," said Alonso.
"We were very lucky today but also very quick."
Coulthard was the major beneficiary of a first-lap collision at the first corner between Montoya and Mark Webber's Williams.
Montoya had jumped up to third place from fifth off the line but turned in on Webber, who blamed himself for the crash, saying he had braked too late.
Several other drivers were involved in the melee, with Michael Schumacher dropping back to 14th.
Coulthard, though, ended the first lap in fourth place, which became third after Trulli was given a drive-through penalty because his mechanics had left the grid too late.
Coulthard drove a strong race after benefiting from the first-corner crash
Alonso spent the first stint behind the Red Bull, passing Coulthard by making a late first stop on lap 23.
Coulthard lost another place to Barrichello when race stewards ordered him to drive through the pits without stopping as a penalty for breaking the pit lane speeding limit on his way out from his first stop.
Coulthard broke the limit by 1mph after releasing his speed-restricter too soon to ensure he passed a Minardi.
But the Scot impressively held his place through to the end of the race, even with Michael Schumacher behind him.
The world champion fought back to ninth place before the first stops, during which he passed Montoya by stopping one lap later.
The Ferrari spent much of the second stint holding up the McLaren, only to edge away as their second stops neared as its Bridgestone tyres proved more durable than Montoya's Michelins.
Schumacher was able to pass Sauber's Felipe Massa for sixth before his stop and rejoined comfortably ahead of the Brazilian and Montoya.
Massa then lost his position when he ran off the track with eight laps to go, promoting Trulli to eighth.
Jenson Button was 10th on his return after his BAR team's two-race ban.
The cars of both Button and team-mate Takuma Sato were uncompetitive throughout the race.
Result of European Grand Prix at the Nurburgring:
1 Fernando Alonso (Spa) Renault 1:31:46.648
2 Nick Heidfeld (Ger) Williams 16.567 seconds behind
3 Rubens Barrichello (Brz) Ferrari at 18.549
4 David Coulthard (GB) Red Bull at 31.588
5 Michael Schumacher (Ger) Ferrari at 50.445
6 Giancarlo Fisichella (Ita) Renault at 51.932
7 Juan Pablo Montoya (Col) McLaren at 58.173
8 Jarno Trulli (Ita) Toyota at 1:11.091
9 Vitantonio Liuzzi (Ita) Red Bull at 1:11.529
10 Jenson Button (GB) BAR at 1:35.786
R 11 Kimi Raikkonen (Fin) McLaren 1 lap behind
12 Takuma Sato (Jpn) BAR 1 lap
13 Jacques Villeneuve (Can) Sauber 1 lap
14 Felipe Massa (Brz) Sauber 1 lap
15 Tiago Monteiro (Por) Jordan 1 lap
16 Narain Karthikeyan (Ind) Jordan 1 lap
17 Christijan Albers (Net) Minardi 2 laps
18 Patrick Friesacher (Aut) Minardi 3 laps
R Ralf Schumacher (Ger) Toyota 26 laps
R Mark Webber (Aus) Williams 59 laps
Fastest Lap: Alonso, one minute 30.711, lap 44
Key: R = retired; NC = not classified