The Oranje needed to avoid defeat to Joachim Low's side to guarantee their place in the semi-finals, but first half strikes from Timo Werner and Leroy Sane appeared to be enough to see them off on the night.
However, late goals from Quincy Promes and Virgil van Dijk stunned the Germans, and France, as the Dutch surged into the next stage.
Ronald Koeman's side came into this game knowing that they simply needed to avoid defeat to book their spot in the final four, after a stunning win over world champions France last Friday.
However, that performance seemed to have come at a cost, with several of their players below par in Germany on Monday night.
But the home side failed to kill the game in the second half after squandering a mass of opportunities and two goals in the last five minutes for Netherlands turned the game on its head.
Promes’ 85th minute strike came when he curled in an inch-perfect effort from the edge of the box.
Liverpool centre-back Van Dijk was instructed to play the remaining minutes of the game as an additional striker for Netherlands and that move paid off when he expertly volleyed home to level the scores in stoppage time.
Portugal, who will host the finals next June, became the first team to reach the final stage after they topped group A3.
Gareth Southgate's England side became the next to join them after a dramatic late Harry Kane winner against World Cup finalists Croatia at Wembley on Sunday.
Switzerland also defied the odds to qualify when they came from 2-0 down to beat Belgium 5-2 at the Swissporarena, before Netherlands completed the final four on Monday night.