Haris Seferovic scored a hat-trick as Switzerland completed a scarcely believable comeback to thrash Belgium and reach the Nations League finals.
Thorgan Hazard scored twice for Belgium in the opening 17 minutes, leaving the Swiss needing four goals to progress.
Ricardo Rodriguez gave them hope with a penalty before Seferovic scored from close range and then smashed them into the lead.
Nico Elvedi headed in their fourth before Seferovic’s third.
Switzerland will now play in next June’s Nations League semi-final against hosts Portugal, England or whoever progresses out of France and the Netherlands.
Swiss looked out of it after bad start
Switzerland fans must have been thinking about leaving after Hazard’s two early goals in Lucerne.
He took advantage of Elvedi’s weak back-pass from brother Eden Hazard’s ball to give them a second-minute lead and then smashed another into the bottom corner.
A 1-0 or 2-1 win would have done for Switzerland but because of away goals in their head-to-head record with Belgium, they needed to win by two goals once Belgium had taken a 2-0 lead.
Against the side ranked number one in the world – and after such an electric start for Belgium – that was looking very unlikely.
Belgium left floored by Swiss recovery
The hosts started another brilliant Nations League comeback, on the day England scored twice late on to beat Croatia and reach the finals.
The recovery started when Nacer Chadli fouled Kevin Mbabu as the former Newcastle player tried to shoot. Rodriguez stepped up and sent keeper Thibaut Courtois the wrong way.
Seferovic, who has scored only four goals for Benfica this season, was their unlikely hero – although Xherdan Shaqiri was magnificent too.
The pair combined for the second when the Liverpool attacking midfielder headed a cross over to Seferovic to score from close range.
And they took the lead in the game when the Swiss broke quickly from an Eden Hazard corner and Edimilson Fernandes’ cross was fired home by Seferovic.
Elvedi, who was responsible for the opening goal, put them in pole position for the first time when he headed in Shaqiri’s excellent cross.
Shaqiri had a hand in the fifth when his backheel found Mbabu, whose cross was perfectly headed home by Seferovic.
The Belgians looked stunned from the moment the Swiss started to come back and their best chance came seconds after the fifth goal when Eden Hazard’s shot was tipped onto the bar by Yann Sommer.