Ferrari's Michael Schumacher won the Chinese Grand Prix to take the lead of the world championship for the first time this season with two races left.
Schumacher celebrates as Alonso ponders second place
Schumacher won only because Renault threw away victory with mistakes in both of Fernando Alonso's pit stops.
The first, a wrong tyre choice, cost Alonso grip, and his lead to team-mate Giancarlo Fisichella and Schumacher.
Schumacher passed Fisichella for the lead after their final stops and Alonso fought back to second place.
Jenson Button took fourth place by passing his Honda team-mate Rubens Barrichello and BMW Sauber's Nick Heidfeld in a hectic moment at the final corner.
Barrichello and Heidfeld made contact, and slipped to sixth and seventh places behind McLaren's Pedro de la Rosa.
Williams' Mark Webber took the final point in eighth place.
Schumacher's win puts him level on points with Alonso, but he is leading the championship by virtue of having one more win.
Schumacher's expression betrays the importance of his win
He and Ferrari appear to have unstoppable momentum in Schumacher's attempt to head off into retirement with an eighth title - they have eroded Alonso's once 25-point lead to nothing.
And the importance of the victory was underlined by the manner of both drivers after the race.
Schumacher celebrated exuberantly, jumping with joy and pumping his fist repeatedly as soon as he climbed out of the car, while Alonso wore an expression of apparently weary resignation.
"It's been an exciting and extreme weekend," said Schumacher.
"The most critical decision was after the first pit stop, which tyres to go to, and it was obviously a gamble.
"I went into the race today with the motto of 'damage limitation'. That I was able to get the victory makes it all the more beautiful."
Even worse for Renault, they will look back on this as a race in which they threw away a golden opportunity for Alonso to win for the first time since June and stall Ferrari's fightback.
"We lost a big opportunity," said Alonso. "There were nine or 10 laps when I was completely off the pace and I think the race finished there.
"We tried to put on the dry tyres to find the miracle but it was too late."
The world champion streaked away into the lead at the start of the race on a wet track and quickly built a huge advantage.
Alonso was soon more than 20 seconds ahead of Schumacher, who started sixth and took his time to settle into the race and pass the Hondas of Rubens Barrichello and Jenson Button.
Schumacher was in third place on Fisichella's tail by the time of the first pit stops, which was when Renault's error came.
The track was drying out very slowly, but Alonso's intermediate tyres were losing grip, and had already caused him a couple of scary off-track moments.
That made the decision as to what to do with tyres very difficult, but Renault appear to have got it wrong.
They put new intermediates on to the front and did not change the rears, but that left Alonso with a catastrophic lack of front grip, and Fisichella and Schumacher immediately closed right in on him.
Fisichella tried to hold off Schumacher for a couple of laps, but with Alonso as much as four seconds off the pace Renault decided to let the Italian by into the lead.
Conditions were treacherous on the wet track at the start
Alonso could do nothing about holding off Schumacher, and he was forced to watch his rival disappear up the road.
With little to lose, Renault then made the decision to bring Alonso in for dry-weather tyres five laps earlier than Schumacher on lap 35.
In hindsight, Alonso still could have won at that point, but a sticking rear wheel nut cost him more than 10 seconds, and with it his chances of victory.
The stop was also probably a lap or two too early, and by the time the tyres were up to working temperature he was already 50 seconds behind the leaders and out of the battle for victory.
Renault's hopes of victory were left with Fisichella, who stopped for dry tyres a lap later than Schumacher.
The Italian made it out of the pits just ahead of the Ferrari, but with the track still slippery and his tyres not up to temperature, he was easy prey for Schumacher, who passed him for the lead at the first corner.
By this time, Alonso was by far the fastest man on the track, but was more than 20 seconds behind Schumacher and 10 behind Fisichella.
He caught and passed his team-mate several laps before the end, but although he closed quickly on Schumacher - often at more than a second a lap - he ran out of time to catch him and his chances of the title were left hanging by a thread.
Chinese Grand Prix result:
1. Michael Schumacher (Ger) Ferrari one hour 37 minutes 32.747 seconds
2. Fernando Alonso (Spa) Renault +3.121 seconds
3. Giancarlo Fisichella (Ita) Renault +44.197
4. Jenson Button (GB) Honda +1:12.056
5. Pedro de la Rosa (Spa) McLaren-Mercedes +1:17.137
6. Rubens Barrichello (Brz) Honda +1:19.131
7. Nick Heidfeld (Ger) BMW Sauber +1:31.979
8. Mark Webber (Aus) Williams-Cosworth +1:43.588
9. David Coulthard (GB) RedBull-Ferrari +1:43.796
10. Vitantonio Liuzzi (Ita) Toro Rosso-Cosworth 1 lap behind
11. Nico Rosberg (Ger) Williams-Cosworth 1 lap
12. Robert Doornbos (Ned) RedBull-Ferrari 1 lap
13. Robert Kubica (Pol) BMW Sauber 1 lap
DQ Takuma Sato* (Jpn) Super Aguri-Honda 1 lap
15. Scott Speed (US) Toro Rosso-Cosworth 1 lap
16. Christijan Albers (Ned) MF1-Toyota 3 laps
17. Sakon Yamamoto (Jpn) Super Aguri-Honda 4 laps
R Ralf Schumacher (Ger) Toyota 49 laps completed
R Felipe Massa (Brz) Ferrari 44 laps
R Jarno Trulli (Ita) Toyota 38 laps
R Tiago Monteiro (Por) MF1-Toyota 37 laps
R Kimi Raikkonen (Fin) McLaren 18 laps
Key: R = retired; DQ = disqualified
* Sato eliminated from results for ignoring blue flags warning him to let faster drivers by
Fastest lap: Alonso, one minute 37.586 seconds, lap 50