McLaren's Kimi Raikkonen won the Belgian Grand Prix for the second year in a row on Sunday to keep Renault's Fernando Alonso waiting for the Formula One title.
Spaniard Alonso, who needed to beat the Finn by four points to become the sport's youngest champion at the age of 24, crossed the line second after McLaren's Juan Pablo Montoya crashed three laps from the end.
Alonso now heads for Brazil in two weeks' time with every hope of being crowned there. He has a comfortable 25 point lead and three races remaining.
The Spaniard has 111 points to Raikkonen's 86 and a third place will be enough at Interlagos even if the Finn wins again. Both have won six times this year.
Indian ace Narain Karthikeyan finished 11th.
Until Montoya crashed, McLaren were heading for their first one-two finish in five years as well as the overall lead in the constructors' championship.
It was the second time in three races that Montoya had lost second place, and given Alonso points on a plate, while heading for a one-two.
Renault are six points clear of McLaren in the constructors' championship, the French team also failing to get both cars to the finish when Italian Giancarlo Fisichella crashed out on the 11th of 44 laps.
McLaren have now won four races in a row, however.
With expected heavy rain holding off but the track still damp and treacherous, Montoya led from pole position and stayed ahead until the final pitstops when, as expected, Raikkonen took over in front.
The Colombian had said before the start that he would help his team mate while McLaren had made their intentions quite clear.
Briton Jenson Button was third for BAR, ahead of Australian Mark Webber in a Williams and Brazilian Rubens Barrichello for Ferrari.
Canadian Jacques Villeneuve was sixth in a Sauber, with Toyota's Ralf Schumacher seventh after running close to Montoya in second place before a disastrous attempt to switch to dry tyres backfired.
Portugal's Tiago Monteiro took the final point for Jordan.
Ferrari's seven-times champion Michael Schumacher, already out of contention after failing to score in the two previous races, completed a dismal hat-trick with another retirement after 14 laps.
The German, who struggled early on with dry tyres on a slippery surface, was rammed in the rear by BAR's Takuma Sato after the safety car went in and was clearly furious with the erratic Japanese.
"We've often experienced Hara-Kiri reactions from him in the past and that was another one today," Schumacher fumed. "We've talked to him about it in the past. I don't know what sort of therapy might help him."
Sato said the conditions were very tricky: "I locked up the brakes and didn't have the stopping distance."
1. Kimi Raikkonen (Finland) McLaren 1:30:01.295
2. Fernando Alonso (Spain) Renault +00:28.394
3. Jenson Button (Britain) BAR 00:32.077
4. Mark Webber (Australia) Williams 01:09.167
5. Rubens Barrichello (Brazil) Ferrari 01:18.136
6. Jacques Villeneuve (Canada) Sauber 01:27.435
7. Ralf Schumacher (Germany) Toyota 01:27.574
8. Tiago Monteiro (Portugal) Jordan 1 lap
9. Christian Klien (Austria) Red Bull 1 lap
10. Felipe Massa (Brazil) Sauber 1 lap
11. Narain Karthikeyan (India) Jordan 1 lap
12. Christijan Albers (Netherlands) Minardi 2 laps
13. Robert Doornbos (Netherlands) Minardi 3 laps
14r. Juan Pablo Montoya (Colombia) McLaren 4 laps
15r. Antonio Pizzonia (Brazil) Williams 5 laps
r. Jarno Trulli (Italy) Toyota 10 laps
r. David Coulthard (Britain) Red Bull 26 laps
r. Michael Schumacher (Germany) Ferrari 31 laps
r. Takuma Sato (Japan) BAR 31 laps
r. Giancarlo Fisichella (Italy) Renault 34 laps
(rank: r = retired, nc = not classified)
Fastest Lap: Ralf Schumacher, 1:51.453, lap 43.