Reigning world champion Fabio Quartararo roared to his first win of the season in a drama-filled Portuguese Grand Prix on Sunday while Johann Zarco, who began in pole position, survived a late onslaught from Aleix Espargaro to come second.
France's Quartararo leaped from fifth to third on the opening lap before overtaking early race leader Joan Mir on the fourth and gradually disappearing into the distance at the Algarve International Circuit in Portimao.
With his and Yamaha's first MotoGP victory since Silverstone last season, Quartararo moved level on points with Alex Rins at the top of the championship standings and got his title defence back on track, while erstwhile leader Enea Bastianini crashed out.
"I managed to win by pushing myself to the limit," Quartararo, 23, said after meeting the flag over five seconds clear of countryman Zarco. "Today, I felt very good since the warm-up. I made an amazing start in the race.
"I had to be aggressive since the beginning because I knew we were going to have problems here if we stayed behind the Ducatis. I'm super happy to get my first win of the season. That's the most important thing for me - to never give up."
Pramac Ducati's Zarco and Aprilia rider Espargaro joined Quartararo on the podium after Jack Miller took down Joan Mir while attempting to pass the 2020 world champion in the battle for the podium with seven laps remaining.
Mir's Suzuki team mate Rins started 23rd on the grid but made a stunning recovery to finish fourth while home hero Miguel Oliveira held off the Marquez brothers in the closing stages to take fifth place.
Honda's six-times world champion Marc Marquez shook off a poor start and got the better of his younger brother Alex in a heated fight for sixth.
Ducati's Francesco Bagnaia was cleared to race earlier on Sunday after a heavy crash in Saturday's qualifying and stormed back from last place to finish eighth, beating Marquez's team mate Pol Espargaro on the last lap.