Spaniards Marc Marquez and Dani Pedrosa of Repsol Honda came in second and third, respectively.
Italian rider Andrea Dovizioso of Ducati on Sunday claimed his second victory of the season by winning the Catalan motorcycle Grand Prix at the Circuit de Barcelona-Catalunya here.
His victory came of the heels of a win in his home country last weekend in Tuscany, reports Efe.
"I didn't expect to be competitive here and I won," Dovizioso said after the race.
"Ten laps to the end I tried to push but when I got to the front I realised my tyre was finished! But it was the same for them, too," the Italian racer added.
Meanwhile, Spaniards Marc Marquez and Dani Pedrosa of Repsol Honda came in second and third, respectively.
Spaniard Maverick Viñales of Yamaha, who finished in 10th place in Sunday's race, continued to lead the World Championship standings with 111 points, seven points ahead of second-placed Dovizioso, and 23 ahead of third-placed Marquez.
Spain's Jorge Lorenzo of Ducati came fourth, followed by Yamaha's Frenchman Johann Zarco and Germany's Jonas Folger, who were fifth and sixth.
Behind the Yamaha riders in seventh was Spaniard Alvaro Bautista of Aspar.
Italian rider Valentino Rossi of Yamaha was eighth and Spaniard Hector Barbera of Avintia ninth, ahead of Vinales.