France defender Theo Hernandez struck the winning penalty in a 5-3 shootout win against Portugal to reach the semi-finals of Euro 2024 where they will meet Spain.
Joao Felix missed for Portugal during the shootout which came after the match finished 0-0 following extra time.
Both teams missed a string of chances in 120 minutes of open play at the Volksparkstadion, the best chance falling to Cristiano Ronaldo in the first period of extra time when he skied over from close range.
France's Kylian Mbappe looked uncomfortable in a mask he was wearing for a broken nose and was substituted during extra time.
France will play Spain in Munich on Tuesday for a chance to reach the July 14 final.