Andrea Iannone claimed his maiden MotoGP win to lead a Ducati 1-2 in the Austrian Grand Prix and end its run of nearly six years without a victory.
Ducati last won a MotoGP race at Phillip Island in October 2010 with Casey Stoner, 2128 days and 101 grands prix ago.
The Red Bull Ring was viewed as the ideal opportunity to end that drought, and Iannone and team-mate Andrea Dovizioso both qualified on the front row, split by Yamaha's Valentino Rossi.
In the opening laps, Rossi took the fight to the Ducatis and his team-mate Jorge Lorenzo even led briefly, while Honda's Marc Marquez and Maverick Vinales were also in the mix.
When the frenetic early action settled down, Iannone led the way, ahead of Dovizoso, Lorenzo, Rossi and Marquez.
Dovizioso took the lead on lap 10 at Turn 9, and while Marquez and Vinales subsequently drifted further behind, the Ducatis could not shake the Yamaha pair.
The margin ebbed and flowed by a matter of tenths, but entering the final 10 laps Dovizioso and Iannone were able to up their pace and pull away again to be more than one second clear.
Having gambled on a soft front tyre and medium rear compared to the medium fronts and hard rears of his rivals, Iannone then repaid Dovizioso's earlier move at the penultimate corner on lap 21.
With seven tours to go, that initially helped the Yamaha pair chip back into the margin by a couple of tenths, but Iannone proved his mettle.
Including setting the fastest lap of the race, a 1m24.561s with four to go, Iannone edged away to lead by nearly half a second.
The job was done and he brought it over the line to deliver a victory both he and Ducati craved, while Dovizioso had to settle for second.
The Yamahas faded in the closing laps to finish more than three seconds behind, with Lorenzo third to end a run of three torrid races without a podium, while Rossi followed him all race but had to settle for fourth.
Racing despite dislocating his left shoulder on Saturday morning, Marquez took fifth place.
The Honda rider maintains a healthy championship lead of 43 points over Lorenzo and 57 over Rossi.
Vinales fell off the back of Marquez in the second half of the race and was sixth on his Suzuki, ahead of Dani Pedrosa, who was a lonely seventh.
Pramac Ducati's Scott Redding was the best of the satellite riders in eighth, just ahead of Tech3 Yamaha pair Bradley Smith and Pol Espargaro.
Eugene Laverty ran as high as eighth, but lost several places and was then forced off at the final corner by Danilo Petrucci.
Five riders were handed ride-through penalties for jumping the start: Cal Crutchlow, Hector Barbera, Yonny Hernandez, Alvaro Bautista and Stefan Bradl.
Of the pack, Crutchlow was also one of the big losers on the first lap, falling from seventh on the grid to 16th, and eventually finished in 15th.
Barbera was disqualified for not serving the penalty in the required time, which he attributed to not seeing the message on his dash.
Laverty and Barbera had scored points in every grand prix in 2016, but Marquez is now the only rider with that record.
|8||Scott Redding||Pramac Ducati||29.437s||28|
|9||Bradley Smith||Tech3 Yamaha||29.785s||28|
|10||Pol Espargaro||Tech3 Yamaha||37.094s||28|
|11||Danilo Petrucci||Pramac Ducati||39.765s||28|
|13||Loris Baz||Avintia Ducati||44.284s||28|
|14||Tito Rabat||Marc VDS Honda||45.004s||28|
|15||Cal Crutchlow||LCR Honda||1m03.246s||28|
|17||Yonny Hernandez||Aspar Ducati||1m14.517s||28|
|18||Eugene Laverty||Aspar Ducati||1m36.510s||28|
|19||Stefan Bradl||Aprilia||1 Lap||27|
|-||Hector Barbera||Avintia Ducati||Disqualified||12|
|-||Jack Miller||Marc VDS Honda||Withdrawn||0|