Catalunya Grand Prix: Jorge Lorenzo beats Marc Marquez in Barcelona
Spain's Jorge Lorenzo claimed back-to-back MotoGP victories by winning his home race at the Circuit de Catalunya.
Championship leader Marc Marquez overtook Lorenzo, who began on pole, at the start but was quickly overtaken by his compatriot and finished second.
Italy's Valentino Rossi was third, while Briton Cal Crutchlow, who started 10th, finished in fourth.
"It's amazing how things change in a small time," said Ducati's Lorenzo. "We've been very competitive here."
Three-time champion Lorenzo had struggled this season but won the Italian Grand Prix last time out before announcing he would be moving to Honda next year.
Four-time champion Marquez, on a Honda, remains top of the title standings on 115 points, while Yamaha's Rossi is second on 88 points with Lorenzo seventh on 66.
"I did a really great job," said Marquez. "This weekend was quite tough.
"It was hard to beat Ducati but the most important thing is that we increased the lead in the championship."
Italian Andrea Dovizioso won the race last year but crashed out with 16 of the 24 laps to go.
Catalunya Grand Prix result:
1 Jorge Lorenzo (Spa/Ducati) 40mins 13.566secs
2 Marc Marquez (Spa/Honda) +4.479secs
3 Valentino Rossi (Ita/Yamaha) +6.098secs
4 Cal Crutchlow (GB/LCR Honda) +9.805secs
5. Dani Pedrosa (Spa/Honda) +10.640secs
6. Maverick Vinales (Spa/Yamaha) +10.798secs
7. Johann Zarco (Fra/Yamaha Tech3) +13.432secs
8. Danilo Petrucci (Ita/Ducati Pramac) +15.055secs
9 Alvaro Bautista (Spa/Ducati) +22.057secs
10. Andrea Iannone (Ita/Suzuki) +24.141secs
Championship standings (after six of 19 races):
1 Marc Marquez (Spa/Honda) 115 points
2 Valentino Rossi (Ita/Yamaha) 88
3 Maverick Vinales (Spa/Yamaha) 77
4 Johann Zarco (Fra/Yamaha Tech3) 73
5 Danilo Petrucci (Ita/Ducati Pramac) 71
6 Cal Crutchlow (GB/LCR Honda) 69
7 Jorge Lorenzo (Spa/Ducati) 66
8 Andrea Dovizioso (Ita/Ducati) 66
9 Andrea Iannone (Ita/Suzuki) 66
10 Jack Miller (Aus/Ducati Pramac) 49