Cristiano Ronaldo struck a hat-trick – including two in the last three minutes – as the hosts reached Sunday's final.
Article top media content
Match in brief
Cristiano Ronaldo took centre stage – doesn't he always? – as his sensational hat-trick took hosts Portugal through to Sunday's UEFA Nations League final.
Switzerland battled gamely, and came within two minutes of extra time, but make no mistake: this was the Ronaldo show. First came his opener, a free-kick speared past the unsighted Yann Sommer, and then the Juventus man brought out his box of tricks. Witness his nutmeg on Kevin Mbabu, followed by an outrageous no-look pass.
Switzerland had their chances. Haris Seferović squandered a good headed opportunity amid a bright opening, and the Benfica striker also grazed the top of the bar before the interval as he beat Pepe to a cross. Then, on 55 minutes, Ricardo Rodríguez levelled from the spot after a VAR decision.
The Swiss matched the hosts from that moment until the 88th minute, when Ronaldo fired in a first-time shot after Bernardo Silva's cutback. There was still time for a hat-trick on the break. The crowd, moments earlier betraying their nerves, began the Mexican Waves.
Man of the match: Cristiano Ronaldo
David Moyes, part of the UEFA technical study group who made the selection, explained: "World-class player and exceptional goalscoring ability, scoring three very different goals in what was actually quite a tight game. A threat from beginning to end, he was the player the team turned to in important moments."
View from the stadium
Joe Walker, Portugal
The final score tells one story, but for swathes of that game Portugal were arguably second best. Ronaldo rather let them off the hook. Fernando Santos will need to have his side much sharper and better in possession when they face the winners of Netherands v England on Sunday. The gamble to start João Félix backfired and they lacked a dominant midfield presence. Still, a win's a win. And Ronaldo is Ronaldo.
Matthew Howarth, Switzerland
The result was perhaps harsh on Switzerland, who were often the more composed and confident team at the Dragão. Xherdan Shaqiri – given a free role behind Seferović – was a constant threat, but the Benfica forward failed to make the most of his chances. Even so, there were plenty of positives for Vladimir Petković’s men, who will hope to end the tournament on a high in Guimaraes on Sunday.
7: Ronaldo claimed his seventh hat-trick for Portugal.
88: The Juve attacker moved onto 88 goals in 157 internationals – before tonight he had not scored for Portugal in 349 days.
16: Ronaldo has scored an international goal every year since 2004 – 16 years running!
5: Rodríguez has converted all five of his penalties for Switzerland. His strike was Switzerland's 100th goal under coach Petković.
13: Portugal are unbeaten in 13 competitive home matches, since September 2014.
19: At 19 years and 207 days old, João Félix is the youngest Portugal debutant since Renato Sanches in 2016.
50: Switzerland have not won in Portugal in 50 years, a sequence of nine games that includes UEFA EURO 2004.
Portugal: It's back to Porto on Sunday for the inaugural UEFA Nations League final, where the victors from Thursday's fixture between the Netherlands and England await. Portugal have won just three of their 23 previous encounters with England. The Selecção lost 3-0 to the Netherlands last March, only their second defeat (W7 D4) in 13 meetings with the Oranje.
Switzerland: Third place on the rostrum will be up for grabs a few hours before the final when Petković's side turn out in Guimaraes against the other losing semi-finalists. Switzerland have won just three of their 25 previous meetings with England, losing 1-0 in a September friendly. Their record against the Netherlands is far more even, with the teams winning 15 apiece in 33 encounters.