World champion Valentino Rossi beat Sete Gibernau into second place on a thrilling final lap of the Spanish MotoGP Grand Prix in Jerez.
Rossi saw off a desperate challenge from Gibernau
Gibernau had led for 24 of the 27 laps before a fierce duel between the pair in the closing stages.
Rossi gained then lost the lead, and the duel climaxed at the last corner, when they collided, forcing local favourite Gibernau into the gravel.
Marco Melandri finished in third in a dramatic start to the new season.
Yamaha rider Rossi has an impressive record at Jerez but, despite starting from pole, it looked like he would have to settle for second best this time as Gibernau dominated most of the race.
With two laps to go, Rossi took the lead, but then an error allowed the Spaniard to retake the lead, to the delight of the home crowd.
Rossi strained as much as he could to regain the lead, and on the penultimate corner the pair drew so close that Gibernau was forced off the track, letting Rossi through to win.
Camel Honda pair Alex Barros and Troy Bayliss came fourth and sixth, either side of Kawasaki rider Shinya Nakano.
Max Biaggi, drafted into the official Honda team this year to take the fight to Rossi overcame his worst qualifying position - 16th - to finish seventh.
But his team-mate Nicky Hayden endured a day of misery when he crashed with eight laps to go. The American remounted his bike and rode back to the pits to retire.
British hopes rested on Shane Byrne and James Ellison, but Byrne was forced to pull out early on and Ellison finished in 16th place.
"I was fastest at the exit of (the penultimate corner) and at the moment of braking I was already at the middle of Sete's bike," said Rossi afterwards.
"He moved to close the line, but I had a small, small gap - maybe half a metre - to overtake and it was the only way.
"It's hard and I know Sete's angry now, but that's racing."
A clearly unhappy Gibernau refused to be drawn on what had happened, other than to say he would not be appealing against the result.
He was more concerned about the state of his shoulder, which has been a problem recently.
"I have had surgery on this shoulder and as I was braking I felt it pop out," he said. "I hope it's OK for Estoril."
"It was a high level race and from whatever I can control I am satisfied. We just need to keep looking forward."
Jerez MotoGP Grand Prix result:
1. Valentino Rossi (Italy) Yamaha 45:43.156
2. Sete Gibernau (Spain) Honda 8.631 secs behind
3. Marco Melandri (Italy) Honda 18.460 secs behind
4. Alex Barros (Brazil) Honda 26.938 secs behind
5. Shinya Nakano (Japan) Kawasaki 27.659 secs behind
6. Troy Bayliss (Australia) Honda 28.609 secs behind
7. Max Biaggi (Italy) Honda 30.618 secs behind
8. Makoto Tamada (Japan) Honda 36.887 secs behind
9. Colin Edwards (USA) Yamaha 37.608 secs behind
10 Carlos Checa (Spa) Ducati 39.678 secs behind
16. James Ellison (GB) Blata 1 lap behind
1. Daniel Pedrosa (Spain) Honda 45mins 36.679secs
2. Sebastian Porto (Argentina) Aprilia 2.136 secs
3. Alex de Angelis (San Marino) Aprilia 29.682 secs behind
4. Andrea Dovizioso (Italy) Honda 36.539 secs behind
5. Hector Barbera (Spain) Honda 37.499 secs behind
6. Jorge Lorenzo (Spain) Honda 37.728 secs behind
7. Roberto Locatelli (Italy) Aprilia 45.038 secs behind
8. Alex Debon (Spain) Honda 56.339 secs behind
9. Simone Corsi (Italy) Aprilia 1:02.844 behind
10. Mirko Giansanti (Italy) 1:10.708 behind
11. Chaz Davies (GB) Aprilia 1:20.790 behind
1. Marco Simoncelli (Ita) Aprilia 42mins 27.960 secs
2. Mika Kallio (Fin) KTM 1.418 secs behind
3. Fabrizio Lai (Ita) Honda 1.510 secs behind
4. Mattia Pasini (Ita) Aprilia 8.282 secs behind
5. Gabor Talmacsi (Hun) KTM 8.930 secs behind
6. Manuel Poggiali (SM) Gilera 13.651 secs behind
7. Hector Faubel (Spa) Aprilia 14.590 secs behind
8. Joan Olive (Spa) Aprilia 17.164 secs behind
9. Julian Simon (Spa) KTM 17.262 secs behind
10. Mike di Meglio (Fra) Honda 34.737 behind