Media caption,

Hernandez's penalty sends France into semi-finals

France beat Portugal in a penalty shootout to reach the semi-finals of Euro 2024 after a tense showdown in Hamburg.

Theo Hernandez scored the winning penalty after substitute Joao Felix hit the outside of the post with his effort, the only miss.

Players sprinted over to the other end of the pitch to celebrate with fans afterwards, while Portugal, who had overcome Slovenia via a shootout five days ago, were left feeling deflated while they applauded their supporters.

It marks the end of an era for Portugal captain Cristiano Ronaldo, who confirmed this week it would be his final Euros.

Before the match, all eyes had been on a showdown between 39-year-old Ronaldo and France's Kylian Mbappe but both failed to have an impact, though the Portugal striker did put away his spot-kick.

Mbappe had to be substituted in extra time after an earlier whack to his face, covered with a mask due to a broken nose, so he was unable to take part in the shootout.

It had been a cagey match with relatively few chances though Portugal had the best of them.

Bruno Fernandes and Vitinha were both denied by goalkeeper Mike Maignan before France's Randal Kolo Muani had a shot deflected inches wide by Ruben Dias.

Moments later, Eduardo Camavinga should have put France ahead when he dragged an effort beyond the far post from close range.

But extra time was needed and when the moment came, Portugal's talisman Ronaldo stabbed a cutback from Francisco Conceicao way over the bar, to the astonishment of fans behind the goal and their luck ran out after a second shootout in consecutive games.

It means France will now face Spain in the semi-finals in Munich on Tuesday (20:00 BST kick-off).

Mbappe's spark missing as France stumble through

Focus has been on Mbappe throughout the tournament after he broke his nose in the group stage and he still does not look comfortable wearing the mask he needs to continue playing.

He was hit in the face by the ball midway through the second half, needing several minutes of treatment before returning to the pitch, fiddling with the mask and still clearly in discomfort.

Ultimately, he was unable to provide the spark France needed to get through in 90 minutes and it was no surprise to see him taken off in extra time as he sat in the dugout holding ice to his face.

"He is always very honest with me and the team. When he feels he doesn't have the capacity to accelerate we cannot afford to lose that, even when it's Kylian," said France manager Didier Deschamps.

"With everything that's happened with him, he's hanging in there. He's not at his top form and over time, with the efforts he put in, he felt very tired."

In the absence of Mbappe’s magic, France lacked creativity and struggled, relying on brief lapses in concentration in Portugal’s defence for chances.

Camavinga had a huge opportunity to put them ahead when the ball fell kindly for him in the box, only for him to drag wide from close range.

Neither side pushed for a winner in added time and France rode their luck - as they have done for much of the tournament - to progress from a penalty shootout.

They were one of the heavy favourites leading into the tournament but while they have scraped through to the semi-finals here, they have done little to convince supporters they can beat an impressive Spanish side in their next match.

No fairytale ending as Martinez faces criticism

Despite the heroics of goalkeeper Diogo Costa in Portugal’s last-16 shootout victory over Slovenia, there was no fairytale ending this time around.

Ronaldo, in the spotlight himself having failed to score for the first time at a major tournament here in Germany, could not get into the game and offered very little in Portugal’s attack.

Instead, it was Rafael Leao who provided the stardust, creating numerous chances down the left-hand side.

The AC Milan forward slipped a pass through smartly to Fernandes in the second half but the Manchester United midfielder struck straight at goalkeeper Maignan.

Were it not for a resolute performance in defence by William Saliba, Portugal may have broken France down but he was a colossus, while veteran Pepe was superb at the back for Roberto Martinez’s side.

With the defences shining and very little being offered in attack -aside from Leao outwitting Joules Kounde with his pace and trickery - something needed to change, but Martinez appeared reluctant to take risks, leaving goal threats Diogo Jota and Goncalo Ramos - scorer of a hat-trick at the 2022 World Cup - on the bench.

He has been criticised for his team selection throughout the tournament and having named the same starting XI that played 120 minutes on Monday, the Spanish manager will no doubt be questioned again.

Martinez has relied on Ronaldo’s excellence - he has delivered so often for Portugal - but he could not inspire his side to victory in Germany.

Player of the match

Number: 3 Pepe
Average rating 7.13
Number: 3 Pepe
Average Rating: 7.13
Number: 17 Rafael Leão
Average Rating: 6.93
Number: 10 Bernardo Silva
Average Rating: 6.82
Number: 19 Nuno Mendes
Average Rating: 6.68
Number: 23 Vitinha
Average Rating: 6.55
Number: 4 Rúben Dias
Average Rating: 6.55
Number: 8 Bruno Fernandes
Average Rating: 6.54
Number: 20 João Cancelo
Average Rating: 6.54
Number: 22 Diogo Costa
Average Rating: 6.38
Number: 2 Nélson Semedo
Average Rating: 6.29
Number: 26 Francisco Conceição
Average Rating: 6.13
Number: 6 João Palhinha
Average Rating: 6.04
Number: 18 Rúben Neves
Average Rating: 5.78
Number: 16 Matheus Nunes
Average Rating: 5.54
Number: 7 Cristiano Ronaldo
Average Rating: 5.43
Number: 11 João Félix
Average Rating: 5.04

After the opportunity to rate players has closed, the score displayed represents the average from all the submissions by BBC Sport users.