Maverick Vinales eased to victory ahead of world champion Marc Marquez at the Dutch MotoGP in Assen.
Vinales, 24, secured his first win since the 2018 Australian GP after pulling away from Marquez in the closing stages, although the Honda rider extended his lead in the championship to 44 points.
France's Fabio Quartararo, 20, who started on pole, completed the podium.
"My team did a great job," Vinales (Monster Energy Yamaha MotoGP) said. "I'm living my dream, it's been such a long time since my last victory."
Marquez was content with second place, adding: "I knew Yamaha were very very strong in practice, so this is like a victory. Vinales - he deserves the win."