Samuel Umtiti has put France on the World Cup final after a thumping header at the start of the second half.
The centre-back turned the ball home from a corner after getting ahead of his marker, Marouane Fellaini.
Belgium had dominated the early stages of the game but failed to make their pressure count, allowing their European rivals back into the game.
France goalkeeper Hugo Lloris was forced into a stunning save to deny Toby Alderweireld, while Eden Hazard saw a couple of efforts miss the mark.
But it was ultimately France who took the lead after coming out of the blocks quickly in the second half.
At the end
France beat Belgium to reach World Cup final where they will play Croatia or England?