Francisco Trincão came off the bench to score twice and Cristiano Ronaldo also found the net as Portugal defeated Denmark 5-2 after extra time for a 5-3 aggregate victory that sent them through to the Nations League semi-finals, where they will face Germany.
With the Danes leading the tie 1-0 thanks to Rasmus Højlund’s goal in Thursday’s first leg in Copenhagen, Ronaldo won and then missed an early penalty before Portugal took the lead on the night in the 38th minute thanks to an own goal from the Denmark and Fulham defender Joachim Andersen.
The goal was cancelled out by Rasmus Kristensen’s header in the 56th minute, and though Ronaldo gave the home side the lead again with a finish from a tight angle, Christian Eriksen put Denmark back in front on aggregate in the 76th minute.
Trincão then took over, scoring in the 86th minute to make it 3-3 on aggregate and force extra time before making it a double in the 91st, with Gonçalo Ramos adding Portugal’s fifth.
Cristiano Ronaldo celebrates scoring Portugal’s second goal, having earlier failed to score a penalty. Photograph: Pedro Nunes/Reuters
Spain claimed a 5-4 penalty shootout win over the Netherlands at Estadio de Mestalla to set up a tie against France after the second leg of their thrilling contest ended 3-3 to leave the tie level 5-5 on aggregate.
Both sides missed their fourth penalties, but the decisive blow was landed when the Netherlands’ Donyell Malen saw his attempt saved by Spain’s goalkeeper Unai Simón, allowing Pedri to convert and secure the win.
The hosts grabbed an early lead after Jan Paul van Hecke brought down Mikel Oyarzabal, who calmly converted the resulting penalty in the eighth minute.
The situation was reversed at the start of the second half as Spain’s Robin Le Normand fouled Memphis Depay, who converted with ease from the penalty spot to level the score for the Dutch.
Spain regained the lead in the 67th minute through a header by Oyarzabal after a counterattack, but the Netherlands equalised in the 79th with Ian Maatsen’s powerful strike, sending the match to extra time.
Spain regained the lead 13 minutes into extra time with a stunning left-footed strike from Lamine Yamal, but four minutes into the second period, Xavi Simons equalised for the Dutch from the penalty spot after a foul by Simón, sending the match to penalties.
Germany squandered a three-goal lead in Dortmund to draw 3-3 against Italy but still earned a nerve-racking 5-4 aggregate victory and a spot in the last four.
The Germans shot out of the blocks with 16 first-half efforts towards goal, and with one of them Joshua Kimmich opened their account thanks to a 30th-minute penalty.
They then caught Italy goalkeeper Gianluigi Donnarumma and the entire defence napping with a quickly taken Kimmich corner for the unmarked Jamal Musiala to slot in their second in the 36th minute. Tim Kleindienst added a third on the stroke of half-time.
It was a German mistake, however, that launched Italy’s comeback and allowed Moise Kean to cut the deficit four minutes after the restart. With the Germans a shadow of their earlier selves, Kean then beat the defender Jonathan Tah in the 69th minute to make it 3-2.
Jonathan Tah and Nicolò Barella get to grips with one another on a dramatic night in Dortmund. Photograph: Hollandse Hoogte/Shutterstock
Italy drew on the night with Giacomo Raspadori’s stoppage-time penalty but could not find another goal to level the tie on aggregate.
France overturned a two-goal deficit to qualify for the semi-finals by eliminating Croatia 5-4 on penalties after a 2-0 victory in their quarter-final second leg at the Stade de France.
Dayot Upamecano scored the winning penalty in the shootout in which the France goalkeeper Mike Maignan made two saves.
skip past newsletter promotion
Sign up to Football Daily
Kick off your evenings with the Guardian’s take on the world of football
Privacy Notice: Newsletters may contain info about charities, online ads, and content funded by outside parties. For more information see our Privacy Policy. We use Google reCaptcha to protect our website and the Google Privacy Policy and Terms of Service apply.
after newsletter promotion
Michael Olise opened the scoring in the 54nd minute and Ousmane Dembélé doubled their lead 10 minutes from time to send the tie into extra time after their 2-0 loss in Split on Thursday. France had a total of 22 chances while Croatia could not manage a single shot on target in 120 minutes.
Dayot Upamecano celebrates with Mike Maignan after scoring the winning penalty for France. Photograph: Sarah Meyssonnier/Reuters
Evan Ferguson scored his first goal since November as the Republic of Ireland preserved their League B status with a 4-2 aggregate victory in their playoff against Bulgaria.
Ferguson, currently on loan at West Ham from Brighton, claimed his fifth senior international goal with 27 minutes remaining before the substitute Adam Idah struck after coming off the bench to secure a 2-1 playoff second-leg win at the Aviva Stadium to go with the one which Ireland returned from Plovdiv with on Thursday.
Just as they had done on home soil, the Bulgarians took a first-half lead, this time through the midfielder Valentin Antov, and again they were unable to defend it on a night when, contrary to the Ireland manager Heimir Hallgrímsson’s prediction of a no-holds-barred physical battle, they played some fluent and compact football.
Bulgaria took the lead when Antov stabbed the ball past Caoimhín Kelleher with his side’s first attempt on goal.
Ireland equalised after 63 minutes when Ferguson played a beautifully executed one-two with Finn Azaz before lashing the ball into the roof of the net.
The home team wrapped up victory with six minutes remaining when Azaz set Mark Sykes away down the left and he turned back inside before clipping the ball to the far post for fellow substitute Adam Idah to volley home.
Belgium retained their place in League A of the Nations League with a 3-0 home win over Ukraine on Sunday as Maxim De Cuyper’s opener and Romelu Lukaku’s late double helped them secure a 4-3 aggregate victory.
Turkey sealed promotion with a commanding 3-0 victory over Hungary, completing a 6-1 aggregate triumph, while Serbia will remain in the top tier, defeating Austria 2-0 for a 3-1 aggregate win.
Georgia comfortably retained their League B spot with a dominant 6-1 win over Armenia, sealing a 9-1 aggregate victory. Kosovo earned promotion overcoming Iceland 3-1 and 5-2 on aggregate.
Adam Gnezda Cerin’s extra-time goal handed Slovenia a narrow 1-0 win over Slovakia to remain in League B.