Portugal 0 – 0 France

Theo Hernandez struck the winning penalty for France after Portugal’s Joao Felix had hit a post in the shootout following a 0-0 draw to send Didier Deschamps’ side into a Euro 2024 semi-final with Spain.

There were no tears this time from Cristiano Ronaldo, who had been overcome by emotion during Portugal’s last-16 win over Slovenia, but, despite converting his own spot-kick, the 39-year-old’s final Euros campaign ended in defeat. He was left to console outstanding 41-year-old team-mate Pepe at the end of it all.

Ronaldo was on the fringes for much of the cagey contest, although both sides will feel they could have won it in the second half of normal time. France’s Mike Maignan produced two sharp stops to keep out Bruno Fernandes and Vitinha before smothering Ronaldo’s follow-up backheel, while Kolo Muani saw his shot blocked by Ruben Dias at the other end before Eduardo Camavinga scuffed beyond the far post from close range.

Impact sub Ousmane Dembele grazed a post in the final moments of the 90 but extra-time saw these recent European champions err on the side of caution. A half-chance for Ronaldo was hacked over as Pepe and Dayot Upamecano celebrated blocks like goals.

The major talking point of that extra period was Kylian Mbappe coming off at half-time, having sustained a blow to his face earlier in the match. France’s star man – masked and nursing that broken nose – must have been in serious discomfort to step off the pitch before the shootout but his compatriots were perfect from 12 yards.

Joao Felix was the only player to miss, whacking his effort against an upright, which presented Hernandez with the chance to send France into the final four and a showdown with Spain in Munich on Tuesday.

Stats: Story of the match

Who plays who in the semi-finals?