Netherlands scored twice in the final five minutes to snatch a 2-2 draw with Germany and secure a place in the Nations League Finals.
Ronald Koeman's men had seemed certain to finish second behind France in Group 1 of League A when Timo Werner's first international goal since June and Leroy Sane's second in as many outings had Germany coasting.
Needing only a point to advance, Quincy Promes offered a late lifeline to the outplayed visitors as he cut the deficit in half before makeshift striker Virgil van Dijk completed a remarkable turnaround in the 90th minute with a volley.
The final result was an extension of Germany's annus horribilis as Netherlands rescued a dramatic draw to advance to the final four.
Germany's chance to add a positive finish to a miserable 2018 began brightly as RB Leipzig striker Werner rifled Serge Gnabry's flick-on into the bottom-left corner in the ninth minute.
Toni Kroos helped create the opener and next provided the lofted pass from which Sane doubled the advantage, the Manchester City man regathering possession and beating Jasper Cillessen courtesy of a deflection off Kenny Tete.
Netherlands' hopes appeared to be fading when Ryan Babel limped off clutching his hamstring and his replacement, Javairo Dilrosun, lasted only 20 minutes of the second half before a similar issue curtailed his debut.
Werner had earlier dragged a promising opportunity past the far post, while substitute Marco Reus failed to tee up Sane for a tap-in amid a period Germany would come to rue.
Promes punished some poor defending in the 85th minute and captain Van Dijk then sucked the life out of substitute Thomas Muller's 100th international appearance for Die Mannschaft.
The defender's expert volley from Tonny Vilhena's cross miraculously sent Netherlands through at France's expense and condemned Joachim Low's side to a fifth competitive fixture without victory.
What does it mean? Winning mentality lacking for Germany
What seemed likely to be a lesson of the established order for Netherlands became a reminder of just how much Germany's identity has been lost in recent months.
Low can no longer rely on the heroes of 2010 and yet, for now, he must tread patiently in troubled waters as the emerging generation seeks to discover the competitive nous of the great teams that have preceded them.
Van Dijk the darling of Dutch football
It seems there is little Van Dijk cannot do at the moment as, even during a match in which his side had been breached twice, the defender managed to conjure a moment of inspiration when it mattered most.
Marco van Basten would have been proud of that volley.
Goretzka learns heavy lesson
All Leon Goretzka had to do was toe the ball away from harm on the edge of his penalty area and Germany would have been home and dry.
Instead, the Bayern Munich midfielder was carelessly robbed of possession and Promes was eventually able to curl in the goal that made the stunning late scenes possible.
Along with Switzerland, England and Portugal, Netherlands now have the Nations League Finals to look forward to next June. Low will fix his gaze on the Euro 2020 qualifying draw in December.
|Gregg Popovich is the San Antonio Spurs – Coles hails legendary NBA coach|
|´I´m not going to the f****** White House´ – Megan Rapinoe|
|Lukaku to Inter? Nothing is impossible says agent|
|Buffon returning to Juve just an idea for now – agent|
|Yankees set MLB record by homering in 28th successive game|
|Lakers should re-sign D´Angelo Russell – Magic Johnson|
|Knicks will ´do everything´ to attract free agents, says president Mills|
|Zion Williamson receives surprise gift & note from Drew Brees|
|I don´t want to be an embarrassment – Thiago Silva outlines retirement plans|
|Wozniacki, Kerber breeze through at Eastbourne|
|Netherlands and Italy to meet in Women´s World Cup quarters as Asian sides exit|
|Silva confirms plans to leave Manchester City|
|Ghana 2 Benin 2: 10-man Black Stars open AFCON campaign with disappointing draw|
|Djokovic surprised by reported Federer, Nadal Wimbledon seedings|
|Bengals´ first-round pick Williams likely out for season|
|Simon eases through at Eastbourne as Murray heads out|
|Everton complete £22million Gomes signing|
|Starc´s stunning Lord´s show sends ominous message to Australia´s World Cup rivals|
|Nigeria v Guinea: Bonus issue overshadows Super Eagles´ preparations|
|Roy ´hopeful´ of facing India, reveals England captain Morgan|
|WATCH: Goretzka´s back-garden brilliance|
|Cameroon 2 Guinea-Bissau 0: Banana and Bahoken get AFCON holders off to winning start|
|Real Madrid to have women´s team in 2019-20|
|England captain Morgan not panicking after back-to-back losses|
|Messi and Ronaldo will be succeeded by Bernardo Silva – Portugal great Futre|
|Australia clinch semi-final spot as England lose again|
|Man United must sign players before selling Pogba – Neville|
|Struggling Hasan will overcome poor form - Mahmood|
|Uganda v Zimbabwe: Cranes captain Onyango ready for familiar foes|
|Lara ´fine´ after being admitted to Mumbai hospital|
|Roma bring in Petrachi as new sporting director|
|Mbappe could play at 2020 Olympics|
|Sign him up! – Kompany backs Lampard for Chelsea job|
|Tottenham target Ndombele plans to leave Lyon, confirms president|
|New Zealand v Pakistan: Sarfraz´s side out to keep semi-final chances alive|
|I have everything to prove – Kompany ready for new chapter at Anderlecht|
|AFC Champions League Review: Kashima and Guangzhou edge thrilling ties|
|Di Biagio claims he did a ´great job´ despite Italy´s early Euro U21s exit|
|F1 Raceweek: Wolff seeking Austrian redemption for Mercedes|
|England fight back after Finch century|
|It´s my big dream - Mane would swap Champions League crown for AFCON success|
|Lara taken to Mumbai hospital with chest pains|
|Egypt v DR Congo: AFCON hosts ponder Salah experiment with last 16 in sight|
|Lampard to Chelsea: Returning heroes - the hits and misses|
|Smith and Warner booed by England fans at Lord´s|
|Torres looking forward to ´perfect finale´ with Iniesta and Villa|
|Paddy Lowe will not return to Williams|
|Derby grant Lampard permission to speak to Chelsea|
|Jean Lucas signs for Lyon amid Ndombele exit talk|
|Wladimir Klitschko rescued from yacht after fire|
|Stephen Curry 10 years on: The six players drafted before the Warriors star|
|Stephen Curry 10 years on: An NBA trailblazer in numbers|
|US president Trump criticises Rapinoe´s anthem protest|
|Stephen Curry 10 years on: Warriors pick the perfect script - ex-college coach|
|Australia turn to Lyon as England stick with Sri Lanka XI|
|Brawn welcomes Hamilton insight on new F1 rules|
|Real Madrid can help Hazard reach the highest level, says Torres|
|Kobe sets MVP Giannis new challenge|
|Wimbledon seeding is disrespectful, says Nadal|
|Leicester Tigers put up for sale|
|There are no secrets - Rueda insight won´t give Chile upper hand against Colombia|
|Rumour Has It: Man United reject Neymar-Pogba swap with PSG|
|Clinical Cavani a ´scoring expert´ - Tabarez|
|Harden joins exclusive group with third MVP runner-up finish|
|Late rally lifts Red Sox past White Sox|
|Giannis Antetokounmpo bursts into tears after winning MVP|
|Three takeaways from 2019 NBA awards|
|Coutinho: My Barcelona future? I don´t know|
|NBA awards 2019: Complete list of winners|
|Giannis Antetokounmpo named NBA MVP|