Morocco made history by beating Portugal to become the first African team to ever reach the semi-finals of a World Cup.
In a game of few chances, Morocco striker Youssef En-Nesyri was the hero with the only goal shortly before half-time.
As they have done throughout this World Cup, Morocco defended well to keep Portugal at bay and Cristiano Ronaldo missed a big late chance to force extra-time.
Simon Collings was at the Al Thumama Stadium to see Portugal in action...
Diogo Costa 4
Will not be happy when he watches back the Morocco goal. Came for the cross but got thin air as En-Nesyri headed home.
Diogo Dalot 5
Against Switzerland he had so much joy going forward, but he struggled tonight. His opposite number, Hakim Ziyech, caused him problems in defence.
Pepe 6
A typically battling performance from the 39-year-old. Seemed to be struggling a bit with a knock towards the end, but carried on. Missed a late chance in stoppage time.
Ruben Dias 6
Did OK for most of the game and looked solid enough. Out jumped for the Morocco goal by En-Nesyri, with Dias then clattered by Costa too.
Raphael Guerreiro 5
He had a brilliant game against Switzerland in the last match, finding the scoresheet. Struggled tonight, though, as he was also out jumped for the Morocco goal. Hooked shortly after half-time.
Otavio 6
Bright and lively in the Portugal midfield. Created a good chance for Ramos, but the striker only managed to head wide. Taken off for the final 20 minutes.
Ruben Neves 6
Was having a solid game, keeping things simple and tidy in the middle of the park. Taken off shortly after half-time so Portugal could throw on another forward.
Bernardo Silva 6
Tried to get on the ball in an attempt to kickstart Portugal into life. Popped up all over the pitch, but was unable to find that killer pass.
Bruno Fernandes 7
He was probably just about Portugal’s best player on the day and looked the most likely to score. Hit the bar with an effort and whistled one just over too.
Goncalo Ramos 5
The hero of the last-16 win against Switzerland after scoring a hat-trick in that game. Was quiet tonight, though, missing a good headed chance in the second-half.
Joao Felix 6
Got into a few good positions during the first-half, but couldn’t make them count. Went close to scoring with a diving header in the opening few minutes, and was denied late on by a fine save from Bono.
Substitutions
Joao Cancelo (Guerreiro 51’) 6
Did better than Guerreiro, getting past his man and putting balls into the box.
Cristiano Ronaldo (Neves 51’) 6
Came on for a record 196th appearance for Portugal, but didn’t make an impact and blew a big chance to force extra-time in stoppage time when his weak effort was saved by Bono.
Rafael Leao (Ramos 69’) N/A
Vitinha (Otavio 69’) N/A
Ricardo Horta (Dalot 79’) N/A