History repeated itself for Alex de Angelis at Phillip Island in Australia - when, as last year, he rode to victory from pole, but only after contact with title contender Stefan Bradl on the final lap.
Bradl began the race in eighth after Saturday's rain-interrupted qualifying, with title leader Marc Marquez at the back of the grid, having been penalised for a frightening Friday practice collision with Ratthapark Wilairot, which occurred after the chequered flag.
Marquez carved from 38th to 16th during an incredible first lap, then broke into the top ten on lap 4 of 25. Moments later Bradl took the lead from Scott Redding, the German having worked his way steadily forwards after a cautious first lap.
Bradl and de Angelis then began to edge clear, while Marquez continued to gain places, reaching fifth by lap 10.
Less than four-seconds from the leaders by the midway stage, Marquez passed Claudio Corti for a podium place with nine laps to go. But the Repsol rider's tyres were finally beginning to fade and the 18-year-old had to fight Corti to the flag before claiming the place.
Meanwhile, de Angelis had slipstreamed past Bradl into turn one at the start of the final lap, with the Kalex rider immediately trying to retaliate with an inside move at turn two. But there simply wasn't space and Bradl brushed the back of the JiR rider and was lucky to remain on track.
That left former MotoGP rider de Angelis to score his second ever Moto2 win by 1.358sec from Bradl, with Marquez 6.3sec from victory in third.
The result means that Bradl finally ended an eight-race losing streak to Marquez, and has retaken the title lead - but only by three points, with 50 still to play for.
1. de Angelis (MotoBI) 25 laps
2. Bradl (Kalex) +1.358s
3. Marquez (Suter) +6.362s
4. Corti (Suter) +6.475s
5. P. Espargaro (FTR) +14.815s
6. Sofuoglu (Suter) +15.155s
7. Redding (Suter) +15.261s
8. Iannone (Suter) +16.047s
9. di Meglio (Tech 3) +16.331s
10. Takahashi (Moriwaki) +20.337s
18. Smith (Tech 3) +43.520s