Jorge Lorenzo trimmed nine points from Yamaha team-mate Valentino Rossi's MotoGP lead by dominating the Aragon Grand Prix, as Marc Marquez crashed out for a fifth time in 2015.
Rossi had to settle for third place, with countless efforts to pass a dogged Dani Pedrosa's Honda in a thrilling battle not paying off.
The race was plain sailing from the outset for Lorenzo, who thrust his way to the front from second on the grid at the start.
Marquez dropped from pole to third behind Andrea Iannone, and although he swiftly repassed the Ducati and then caught Lorenzo, no sooner had he arrived on the Yamaha's tail then he was sliding through the gravel on his side.
The reigning champion lost control going into the downhill Turn 12 left-hander, and though he was unhurt in the low-side fall, he kept his helmet on as he walked angrily back through the paddock.
Lorenzo kept his lead over the rest between 2.5 and 3.5 seconds for the rest of the race.
Iannone - racing with a dislocated shoulder after a stumble in training caused a repeat of the injury from his test crash in May - could not hold off Pedrosa and Rossi for long, falling out of the podium battle into fourth.
Rossi stalked Pedrosa until the closing laps, then mounted attack after attack.
But even though Rossi repeatedly outbraked Pedrosa and moved into second, each time the Honda was able to either capitalise as the Yamaha ran wide or instantly dive back past into the next turn.
Pedrosa ultimately denied Rossi by 0.09s at the line after four more position swaps on the last lap.
Andrea Dovizioso surged through from his disappointing 13th on the grid to fifth, though he was 16.4s behind team-mate Iannone as he fended off Aleix Espargaro, Cal Crutchlow, Bradley Smith and Pol Espargaro to the finish.
Both Tech 3 riders had led that pack at different times only to run wide and drop down the queue.
Yonny Hernandez defeated Maverick Vinales in a battle for the final top 10 spot, having gained the place when Pramac team-mate Danilo Petrucci crashed.
|8||Bradley Smith||Tech 3||Yamaha||23||25.503s|
|9||Pol Espargaro||Tech 3||Yamaha||23||26.452s|
|10||Yonny Hernandez||Pramac Racing||Ducati||23||43.889s|
|12||Scott Redding||Marc VDS||Honda||23||48.176s|
|13||Alvaro Bautista||Aprilia Gresini||Aprilia||23||49.755s|
|16||Hector Barbera||Avintia Racing||Ducati||23||50.722s|
|17||Loris Baz||Forward Racing||Yamaha Forward||23||51.997s|
|18||Stefan Bradl||Aprilia Gresini||Aprilia||23||53.406s|
|20||Mike Di Meglio||Avintia Racing||Ducati||23||59.607s|
|21||Toni Elias||Forward Racing||Yamaha Forward||23||1m15.237s|
|-||Karel Abraham||AB Motoracing||Honda||11||Retirement|
|-||Danilo Petrucci||Pramac Racing||Ducati||9||Retirement|
|-||Alex de Angelis||IodaRacing Project||ART/Aprilia||5||Retirement|
|23||Mike Di Meglio||7|
|25||Alex de Angelis||2|