World champion Valentino Rossi hunted down and passed Dani Pedrosa to secure his first win of 2009 in the Spanish Grand Prix at Jerez.
Casey Stoner took his first ever Jerez podium in third, with Jorge Lorenzo losing the points lead to Rossi thanks to a late crash.
After only qualifying fourth, Rossi had declared that it would be "impossible" to win today's race, but changes made overnight allowed him to top the warm-up and then march forward when the grand prix commenced.
The Italian overtook his Yamaha team-mate Lorenzo, who had made a slow start from pole, on the second lap, and then quickly caught Stoner, getting around the Ducati on lap seven after a tough battle.
Pedrosa had grabbed the lead off the line and edged away, so took longer for Rossi to catch, but by half-distance the Honda had the Yamaha on its tail. A pass at the back hairpin on lap 16 saw Rossi take the lead, and once ahead there was no stopping him.
As Rossi pulled away to win by three seconds, Stoner drifted away from Pedrosa and came under pressure from Lorenzo - until the Spaniard's race ended with a low-side crash just four laps from home.
Randy de Puniet rode an excellent race to take fourth for LCR Honda - his best result since joining the team from Kawasaki at the end of 2007. The Frenchman held his own from the start and had a lonely run once Honda's Andrea Dovizioso had slid off the road while racing him early on.
Marco Melandri continued Hayate Kawasaki's fine form by taking fifth following a massive battle with Loris Capirossi (Suzuki) and Colin Edwards (Tech 3 Yamaha). The recovering Dovizioso carved through from 16th to join this group by the end.
Gresini Honda's Toni Elias and Suzuki's Chris Vermeulen completed the top ten, with Yuki Takahashi running strongly for Scot Honda at first before drifting back to 12th behind Sete Gibernau (Hernando Ducati).
Gibernau was the second-best Ducati at the flag, as works rider Nicky Hayden had an unhappy run to 16th and Mika Kallio retired his Pramac version with brake problems.
Pos Rider Bike Time 1. Valentino Rossi Yamaha 45m18.557s 2. Dani Pedrosa Honda + 2.700s 3. Casey Stoner Ducati + 10.507s 4. Randy de Puniet LCR Honda + 31.893s 5. Marco Melandri Hayate Kawasaki + 33.128s 6. Colin Edwards Tech 3 Yamaha + 34.128s 7. Loris Capirossi Suzuki + 34.421s 8. Andrea Dovizioso Honda + 34.625s 9. Toni Elias Gresini Honda + 42.689s 10. Chris Vermeulen Suzuki + 45.183s 11. Sete Gibernau Hernando Ducati + 48.192s 12. Yuki Takahashi Scot Honda + 51.875s 13. James Toseland Tech 3 Yamaha + 53.683s 14. Alex de Angelis Gresini Honda + 53.941s 15. Nicky Hayden Ducati +1m01.237s 16. Niccolo Canepa Pramac Ducati +1m10.896s Retirements: Jorge Lorenzo Yamaha 23 laps Mika Kallio Pramac Ducati 12 laps