
In front of nearly 90,000 fans in Barcelona, reigning world champion Valentino Rossi took a superb win, battling with his Fiat Yamaha teammate Jorge Lorenzo throughout the 25-lap MotoGP race to secure the win on the last corner.
Australia's Casey Stoner (Ducati), who suffered from cramps during the race,, just held off Honda's Andrea Dovizioso for third.
Despite some slight cloud cover close to the Mediterranean coast, an air temperature of 40 degrees meant it was a draining experience for the premier class riders, but Rossi and Lorenzo threw everything into their duel, with "The Doctor" executing a superb move right at the death to take maximum points.
"As we say in Italy, "Mamma Mia!" I think I can honestly say that this was one of the best and hardest wins of my career," said Rossi. Maybe Laguna last year was more important, but this was a great, great victory because it went to the very last corner and it's a long time since that has happened.
"I have dreamed about that move for the last two weeks and today it worked and I am so happy to have this 99th win. We did a perfect job all weekend and my M1 and Bridgestone tyres were brilliant, but we knew that Lorenzo was in the same situation and for sure he was very strong today.
"I had to be very brave and take it right to the limit in order to beat him. This victory today is more important than the 25pts and anyway now we all have the same, what a championship this is!
"As well as thanking my team, I especially want to dedicate this win to my crew chief Jeremy Burgess because his mother sadly died yesterday. I have to say thank you to her and to him because without him, for sure, I would never have arrived at 99 wins. Now I am going to go to sleep for quite a long time because I need to recover from this excitement!"
Stoner's third has left him, Rossi and Lorenzo all tied on 106pts at the head of the standings - the Italian on top as the possessor of the most recent victory.
Stoner was absolutely exhausted, having worked extremely hard to fend off a strong challenge from Dovizioso.
"I haven't felt in great shape all weekend - I wasn't ill but I wasn't quite myself," said Stoner. "Then last night I couldn't sleep, I probably got a couple of hours at the most, and after just a couple of laps this morning I was destroyed.
"I decided to race myself, basically, and bring home as many points as I could manage but my bike was fantastic and that is why I was able to ride it to a really valuable podium. The team did a perfect job after the warm-up and if I wasn't so ill, I think I could have stayed with Valentino and Jorge until the end, although I'm not saying I could have beaten them.
"I started to suffer from really strong cramps and I could barely ride - I was falling over the front of the bike in the hard-braking areas and I was struggling to keep my concentration. I thought about stopping but decided to just back off for a while and try to hang on for a top ten.
"The bike was so good that I was able to keep up a decent pace and hold off Dovizioso. Tonight I'll try to get plenty of rest and recover my strength for the test tomorrow because this is an important period in the championship and we need to test. After that it's Assen and I'm already looking forward to it."
An excellent battle between Loris Capirossi (Suzuki) and the brave Dani Pedrosa (Honda) for fifth place eventually saw an Italian emerge in front of a Spaniard again, Capirossi crossing the line just over two seconds ahead.
With two-way fights for positions going on throughout the order, Colin Edwards (Monster Yamaha Tech 3) used all his experience to overcome Randy de Puniet (LCR Honda) for seventh.
Ducati riders Mika Kallio and Nicky Hayden crossed the line close together in ninth and 10th respectively, giving Hayden his best result of his first season with the Italian factory so far.
Australia's Chris Vermeulen was 11th on his Suzuki.
"It was a difficult race and although I got a good start I got a bit boxed in and found myself at the wrong end of the field," said Vermeulen. "We made a change to the front-end of the bike for the race and that was a bit better and it gave me the confidence to push a bit harder.
"We did score some points today, but it is not where we want to be. We now to some tracks that have been good for us in recent seasons so I hope we get a bit of luck there and put together some good results."
For full results and standings, click here.