Ralf Rangnick's side were handed a tricky draw alongside the Oranje and France, but they have impressed many at this summer's tournament and have accumulated six points from a possible nine to upset the apple cart and finish top of the pile.
Austria have finished one point ahead of runners-up France, who were surprisingly held to a 1-1 draw with already-eliminated Poland, while the Netherlands - who were sitting at the summit heading into matchday three - were already guaranteed a place in the last 16, but they must now settle for one of the best third-placed spots.
Das Team were deserved winners against the Dutch courtesy of a hugely impressive all-round performance and they entered half time ahead thanks to an early own goal from Donyell Malen.
The Netherlands responded just 71 seconds after the break through Cody Gakpo, but Austria weathered an early second-half storm from the Oranje and regained the lead through Romano Schmid's powerful header.
Memphis Depay thought he had rescued a point for Koeman's side with a superb volley, but Marcel Sabitzer had the last laugh for Austria, firing into the roof of the net from a tight angle 10 minutes from time to seal a memorable win - their first over the Dutch since May 1990.
Dire Dutch own goal hands lively Austria deserved lead
Malen was one of three changes made to Koeman's starting lineup, with Joey Veerman and Lutsharel Geertruida also brought into the side as Denzel Dumfries, Jeremie Frimpong and Xavi Simons made way.
Koeman was hoping that Malen, in particular, would make an impact at the right end of the pitch, but the Borussia Dortmund man was instead the unfortunate one to divert the ball into his own net in the sixth minute.
The Netherlands struggled to get going in the early exchanges and were carved wide open down the left flank where Austria's Alexander Prass had plenty of joy throughout the contest.
Prass was in acres of space when he curled a dangerous low delivery into the penalty box; Malen tracked back well to meet the cross but he could only inadvertently slide the ball past a hapless Bart Verbruggen into his own net - the Oranje's first-ever own goal conceded at the European Championship.
Austria continued to pose a threat in the final third, while the Netherlands surprisingly looked lethargic and disjointed, and Koeman had seen enough 10 minutes before the break, replacing a furious Veerman with Simons.
Austria see out impressive win despite Dutch fightback
Koeman's half-time team talk certainly did the trick, as the Netherlands restored parity just 71 seconds after the interval, with substitute Simons feeding Gakpo down the left before the Liverpool forward cut inside and whipped a superb right-footed finish beyond Patrick Pentz.
Just as the Dutch looked to have taken control of proceedings, Austria regained the lead just before the hour mark courtesy of a thumping header from Schmid, after Florian Grillitsch did brilliantly to retain possession on the left before curling a delightful cross into the danger zone.
The Oranje barely threatened after Austria put themselves back in front and found it difficult to make inroads in the final third, but up stepped Depay in the 75th minute to direct a brilliant aerial volley into the far corner, with his strike surviving a check for handball by VAR.
As the enthralling contest continued to ebb and flow, it was Austria who ultimately possessed the cutting edge in the final third and snatched all three points just five minute later. Sabitzer broke down the left channel inside the penalty box before poking a smart finish into the roof of the net to send the Austrian supporters wild behind the goal.
Man of the Match - Marcel Sabitzer
A number of Austrians starred for Rangnick's side, but captain Sabitzer lead by example in midfield and ultimately scored the decisive goal to help Das Team win back-to-back matches at a major tournament for the first time since the 1982 World Cup.
What next for the Netherlands and Austria?
Austria's reward for topping Group D is a last-16 tie on July 1 against the runners-up of Group E, which as things stand will be one of four teams as Belgium, Ukraine, Romania and Slovakia are all locked on three points heading into matchday three on Wednesday.
As for the Netherlands, they could face a challenging last-16 clash against England if the Three Lions top Group C with a win over Slovenia later this evening.