France have reached the World Cup final after beating Belgium 1-0 in St Petersburg.
Defender Samuel Umtiti scored the winning goal with a powerful header past goalkeeper Thibaut Courtois in the 51st minute.
It means the 1998 World Cup winners will play either England or Croatia in the eagerly-awaited final on Sunday.
The remaining semi-final takes place at Moscow’s Luzhniki Stadium on Wednesday, with the Three Lions looking to make it to the final for the first time since 1966.
France will be the favourites to win the title after a strong performance against a star-studded Belgium side featuring the likes of Eden Hazard, Kevin de Bruyne and Romelu Lukaku.
Umtiti rose brilliantly to shrug off Marouane Fellaini and head in Antoine Griezmann’s corner for his first goal of the tournament.
France’s 19-year-old rising star Kylian Mbappe was a constant threat going forward, while midfielder Paul Pogba produced a performance described as “immense” by former England captain Rio Ferdinand.
Football-loving French President Emmanuel Macron and Belgian King Philippe were watching the game from the stands, along with Rolling Stones front-man Sir Mick Jagger.
Didier Deschamps’ team have now beaten Belgium, Uruguay and Argentina on the way to their first World Cup final since 2006.
In that year, they lost to Italy in a game that saw Zinedine Zidane sent off for an infamous headbutt in his last ever match.
After the semi-final, Belgium boss Roberto Martinez said his team wanted to win the third-place play-off on Saturday to finish the tournament “on a real high”.
“We wanted to get into the final,” the former Everton manager said.
“The players showed incredible focus and incredible togetherness. We need to make sure we finish this tournament on a real high.”