Kylian Mbappe overcame a first-half penalty miss to score a brilliant opener and lead France to a 2-0 victory over Morocco, ending Africa’s last hope at the 2026 World Cup.

The France captain, who at 27 became the youngest player to rack up 20 World Cup appearances, curled in a superb goal on the hour mark before setting up Ousmane Dembele six minutes later to book a semi-final meeting with either Spain or Belgium.

The victory was a repeat of the 2022 World Cup semi-final, which France also won 2-0. France are now on track to become only the third nation to play in the final of three consecutive World Cups, after Brazil (1994-2002).

For Morocco, the dream ends at the quarter-final stage. The Atlas Lions, who had carried the hopes of an entire continent, were outclassed by the defending champions and failed to register a single shot on target until the 84th minute.

France started the match with relentless intent, immediately seizing control with fluid ball circulation. In the 4th minute, Mbappe unleashed a powerful low drive that forced Morocco goalkeeper Yassine Bounou to tip wide. From the resulting corner, Dayot Upamecano’s header was also parried by the Al Hilal goalkeeper.

The defining moment of the half came in the 25th minute. Mbappe was racing up the left side when he was chopped down by Manchester United defender Noussair Mazraoui inside the penalty area. After a lengthy VAR check that lasted over three minutes, referee Facundo Tello pointed to the spot.

The long delay may have affected Mbappe’s concentration. The Real Madrid star stepped up and slotted to his right, but it was a weak, poorly hit effort that Bounou calmly smothered. It was Mbappe’s first penalty miss for the French national team since Euro 2020.

France continued to dominate possession and create chances. Desire Doue robbed Ayyoub Bouaddi in midfield and drove forward, only to see his strike tipped away by Bounou. Lucas Digne then crashed a stunning long-range shot onto the crossbar as the first half ended goalless.

The statistics were telling — France had 13 attempts while Morocco managed just one off-target shot. Morocco failed to register a single touch inside the France penalty area in the entire first half.

France maintained their pressure after the break and finally found the breakthrough in the 60th minute. Doue slipped a pass to Mbappe just inside the penalty area. The French captain only needed one touch before unleashing a beautiful curling shot. He cleverly used Issa Diop as a shield, obscuring Bounou’s view, before the ball nestled into the far corner.

It was Mbappe’s eighth goal of the tournament, his 20th in World Cup history, moving him one behind Lionel Messi’s all-time record of 21. He now shares the Golden Boot lead with Messi, both on eight goals, though Mbappe leads on assists.

Just six minutes later, Mbappe turned provider. He collected a pass and tapped it back for Dembele, then kept running forward, drawing several Moroccan defenders with him and creating space for the Ballon d’Or winner. Dembele surged through and unleashed a powerful low strike that beat Bounou despite the goalkeeper getting a hand to it.

Morocco pushed late in search of a response, but their only shot on target came in the 84th minute, with Mike Maignan untroubled throughout. France had further opportunities to extend their lead, with Bradley Barcola forcing a brilliant save from Bounou in the 88th minute.