Jorge Lorenzo strolled to a comfortable victory at the Portugal MotoGP while Casey Stoner produced a stunning comeback ride to finish second.
Starting from pole, Lorenzo retook the lead after losing it to Dani Pedrosa and was unchallenged to the flag.
His victory means he is now 18 points behind championship leader Valentino Rossi, who could only finish fourth.
Stoner, who has missed the last three races because of an illness, was second despite breaking a foot rest.
The Australian has spent the last two months back home undergoing tests after complaining of exhaustion and has been unable to train for five months.
"I had so many critics and so many people telling me that it was in my head," the 23-year-old Ducati rider told BBC Sport. "I never felt so bad in my life, it really ripped into me and to not be competitive like that was really a waste of time.
"To come back like this is a really good start for us and we only have to finish this season and make sure we put the bike in the right direction for next year.
"I had the strength to overtake people and it was kind of awesome. I was ready for the fight and I wanted to try and catch Jorge.
Confidence key for Lorenzo
"Unfortunately on the second lap, after I passed Dani, I broke my foot rest and it kept folding up on me all the time.
"I had no foot rest going into right hand turns and I kept dropping my knee in too far and almost losing the front. Without that we might have been able to tag on the back but in the last few laps, physically, I am not ready."
Lorenzo, however, never looked in trouble after getting back past Pedrosa early on and eventually finished 6.3 seconds clear of Stoner.
It is the Spaniard's fourth victory of the season and reduces Rossi's lead with just three races of the season to go.
"I was very confident before the race because I knew I was first in every practice," said the Yamaha rider.
"I knew that Casey could be fast and he was at the beginning of the race, I couldn't open a big gap. But it's fantastic and it's almost the perfect victory."
Pedrosa posted a new lap record of one minute 36.937 seconds as he came third.
Rossi, who failed to make the podium for the first time at Estoril in the premier class, seemed out of sorts on his Yamaha - eventually finishing 23 seconds adrift of Lorenzo.
And with his team-mate closing the gap in the rider standings, Rossi has plenty to think about ahead of the next race at Phillip Island in Australia on 18 October.
Italian Marco Simoncelli won in the 250cc race, with Hiroshi Aoyama finishing fourth to extend his championship lead to 26 points after Alvaro Bautista crashed out early on.
In the 125cc category, Britain's Bradley Smith took third place behind Spanish winner Pol Espargaro and second-placed Sandro Cortese of Germany.
Portugal MotoGP result: 1 Jorge Lorenzo (Spa) Yamaha 45 mins 35.522 secs 2 Casey Stoner (Aus) Ducati 45:41.816 3 Dani Pedrosa (Spa) Honda 45:45.411 4 Valentino Rossi (Ita) Yamaha 45:58.950 5 Colin Edwards (US) Yamaha 46:08.174 6 Toni Elias (Spa) Honda 46:11.231 7 Andrea Dovizioso (Ita) Honda 46:11.245 8 Nicky Hayden (US) Ducati 46:14.352 9 James Toseland (GB) Yamaha 46:19.615 10 Chris Vermeulen (Aus) Suzuki 46:28.385 11 Randy de Puniet (Fra) Honda 46:31.220 12 Marco Melandri (Ita) Kawasaki 46:40.037 13 Niccolo Canepa (Ita) Ducati 46:40.060 14 Gabor Talmacsi (Hun) Honda 47:02.821
Bookmark with:
What are these?