A stunning goal from Theo Hernandez sent France into the Nations League final after they battled back to beat Belgium 3-2.
Lukaku thought he had won an enthralling contest for Belgium with 88 minutes gone, but it was ruled out for offside after a VAR check, and France made their luck count.
In an even opening to the game, Hugo Lloris made a stunning save to keep out Kevin De Bruyne‘s scuffed effort from close range before Mbappe went close at the other end.
With each side lining up in a 3-4-3 that cancelled out the other, the game began to drift before Carrasco collected De Bruyne‘s pass, drove into the box past Benjamin Pavard, cut back onto his right foot and drilled a shot in at the near post with Lloris wrong-footed.
It was 2-0 before the interval, Lukaku spinning away from the flat-footed Lucas Hernandez before side-footing high beyond Lloris, again at his near post.
France kept Belgium pinned back early in the second half but Antoine Griezmann got the ball stuck under his feet after a brilliant run and cut-back from Mbappe.