France began dreaming of World Cup glory after a two-decade wait after Les Bleus on Tuesday defeated Belgium to reach the final, unleashing a wave of soccer euphoria across the country.
Delirious supporters draped in the Tricolor flag spilled on to Parisian boulevards as the blare of car horns reverberated through the French capital. In a fan zone outside City Hall on the banks of the River Seine, jubilant supporters embraced and lit smoke flares.
"I'm totally blown away, this is crazy," said 41-year-old Gilles Rove in Paris' Belleville neighbourhood. "Nobody believed this could happen at the beginning of the World Cup, but this team has really shown something in recent weeks.
"This team gives me goosebumps, even more so than the team of 1998," he added, in reference to the last time France won the World Cup, on home soil against Brazil 20 years ago.
"We're going to the final, we're going to the final," scores chanted in one central Paris bar before breaking out into an impromptu rendition of the La Marseillaise national anthem.
The partying was marred by clashes between riot police and mobs on the iconic Champs Elysees avenue. Live TV images showed bare-chested men hurling plastic crowd-control barriers and other missiles at the armed officers, who charged back.
In the southern city of Nice, more than two dozen fans were hurt when the detonation of firecrackers triggered a brief stampede near the seafront.
Hundreds of thousands of fans had poured on to the Champs Elysees and around the Arc de Triomphe as bars, cafes and restaurants enjoyed a bumper evening of revelry after the World Cup equivalent of a local derby between the neighbouring rivals.
Some French fans were already looking forward to a possible final clash against long-time rivals England, who play Croatia in the second semi-final on Wednesday.
"Our unfortunate Belgian cousins were just not quite good enough. But it was Europe which won, and it would be amusing if we were to beat the English," said 45-year-old Francois Garnier who watched the game near the Eiffel Tower.
In St Petersburg, ecstatic French fans sang their way out of the stadium, relishing the prospect of a final against England or Croatia.
Belgium fans filed quietly out of the arena, while back home they drowned their sorrows in beer after their dreams of a first World Cup final were shattered by their bigger French neighbours.
"I feel ill," said Denis Backaert, 34, after watching France prevail 1-0 in the tightest of semi-finals between two quality teams in St Petersburg.
France won in front of President Emmanuel Macron, whose popularity has dropped in opinion polls and will be hoping for a World Cup bounce. The French leader went down to the players' dressing-room after the match.
Asked what Macron told the players, Les Bleus young forward Kylian Mbappe told TF1: "He said he would come back for the final, to see us with the cup."FT - France beat Belgium 1-0 to enter final
Samuel Umtiti's header in the 51st minute helped France beat Belgium 1-0 in an entertaining first semi-final on Tuesday. France entered their third final in 20 years, after 1998 and 2006. They also broke 24-match unbeaten run by talented Belgium squad.
90+6' - SAVE! Another brilliant save by Thibaut Courtois, this time to deny Corentin Tolisso
90+4' - Yellow Card! Belgium's Jan Vertonghen booked for a foul on Kylian Mbappe
90+3' - SAVE! Thibaut Courtois collected the ball with a dive to deny Antoine Griezmann
90+2' - Yellow Card! France's Kylian Mbappe booked for time wasting
90+1' - Substitution! Third change for Belgium: Nacer Chadli is replaced by Michy Batshuayi
90' - Six minutes added as stoppage time
88' - Good delivery from Kevin de Bruyne from the resultant set piece. France somehow cleared it out
87' - Yellow Card! France's N'Golo Kante booked for a foul on Eden Hazard
86' - Substitution! Blaise Matuidi is replaced by Corentin Tolisso for France
85' - Substitution! First change for France: Olivier Giroud is replaced by Steven N'Zonzi
84' - Time is running out for Belgium.
81' - SAVE! Axel Witsel's thunderous long ranger was punched out by France keeper Hugo Lloris
80' - Substitution! Second change for Belgium: Marouane Fellaini is replaced by Yannick Carrasco
79' - Paul Pogba's header went over the Belgium crossbar. Griezmann with the curling delivery from a free-kick
76' - Kevin de Bruyne shot it well over the France crossbar from 25 yards out
75' - Free-kick for France near their own penalty area after Griezmann was brought down by Witsel
71' - Yellow Card! Belgium's Toby Alderweireld booked for a foul on Blaise Matuidi
70' - Dries Mertens with another good cross in into the French penalty area from the right flank, but Belgium failed to utilise it properly
67' - Antoine Griezmann passed the ball to Olivier Giroud on the edge of the Belgian box, but the striker skied it over the goal
65' - MISSED! This time Marouane Fellaini's powerful header went just wide of France goal
65' - SAVE! Hugo Lloris punched out the Dries Mertens' cross in from the right flank
63' - Yellow Card! First booking of the game went to Eden Hazard for a foul on Blaise Matuidi
63' - Chadli won a corner for Belgium. Another delivery from Chadli and France cleared out easily
61' - MISSED! Kevin de Bruyne mishit the volley and the ball went straight to France keeper Hugo Lloris
60' - Substitution! First change for Belgium: Mousa Dembele is replaced by Dries Mertens
56' - SAVE! Chaos in front of Belgium goal. Dembele with a timely block to deny Giroud from inside the penalty box
54' - Free-kick for France from the left flank. Griezmann's delivery from the set piece was headed out by Belgium
51' - GOAL! Samuel Umtiti header put France in the lead
Griezmann's delivery from the corner was headed in at the near post by Umtiti, outjumping Fellaini
51' - Giroud's attempt from the top of Belgium box was deflected out by Kompany for a France corner
49' - Good build-up from Belgium. The final cross in from Chadli for Fellaini was headed out by France defender
48' - Lukaku headed it over the France crossbar from close range
Second half underway...
HT - It's 0-0 between France and Belgium after an entertaining first half
France and Belgium went into halftime drawing 0-0 in an entertaining first semi-final, with both teams creating half chances but neither able to break the deadlock. Eden Hazard was a lively presence on Belgium's right, dragging a shot wide and Toby Alderweireld forced a smart save from Hugo Lloris while at the other end Olivier Giroud flicked a header narrowly wide.
45+1' - MISSED! The ball went wide for a France goal kick after hitting a surprised Romelu Lukaku inside the box.
45' - One minute added as stoppage time
45' - Griezmann hit the Belgium wall from the set piece
44' - Free-kick for France from a dangerous position for a foul on Pogba by Dembele
42' - Nacer Chadli's cross in from the right flank was easily cleared out by French defenders
40' - The resultant corner kick for France was cleared out easily by Belgium
39' - SAVE! Thibaut Courtois deflected it wide with the foot to deny Pavard from a close range
38' - Giroud walking off the field for some medical assistance. Came back soon to resume his duty
37' - Griezmann made a counter run from his own half, but his final shot from the edge of Belgium box was well wide of the goal
34' - Giroud shot it wide after getting the ball from Mbappe, who made a good run on the right flank and volley the cross in for the tall striker
33' - Griezmann shot it well over the Belgium crossbar from the edge of the box
31' - Griezmann passed the ball to Pavard on his right from the set piece, and the cross in from the defender was connected by Giroud for a low header. The ball went just wide of the Belgium goal
30' - Jan Vertonghen warned by referee for a foul on Mbappe
28' - De Bruyne's low cross, from the left side, into the France box was blocked out for a Belgium throw-in. Hazard and De Bruyne leading the Belgian attack
25' - First corner of the match for France. Griezmann's delivery was headed out by Fellaini
22' - SAVE! Hugo Lloris dived full length to his right to palm away the ball for another Belgium corner. Brilliant attempt from defender Toby Alderweireld, who struck a thunderous shot with his left foot
21' - Corner for Belgium. Nacer Chadli with the delivery again, a better one this time.
20' - Nacer Chadli's delivery from the resultant corner was a weak one. Headed out
19' - SAVE! This time Eden Hazard's right footed attempt from the top of the France area was headed out for another Belgium corner
18' - Blaise Matuidi's long ranger from 25 yards out went straight to Belgium goalkeeper Thibaut Courtois
15' - MISSED! Eden Hazard's left-footer from the left top of the France box went tantalisingly close to the far post
13' - Paul Pogba's long pass almost found Kylian Mbappe in the Belgium area. Thibaut Courtois had to rush out to collect the ball
11' - Antoine Griezmann lopped it into the Belgium box, and Kylian Mbappe tried to control it from an awkward position but failed. Cleared out by Belgium
10' - Kevin de Bruyne's through pass for Eden Hazard in the left flank was a bit long. Goal kick for France
7' - Nacer Chadli's delivery from the set piece was long and it's a goal kick for France
5' - Eden Hazard's cross in from the left was deflected out by Samuel Umtiti for a corner for Belgium
4' - Belgium attack from the right side. Kevin de Bruyne's cross in from the top right was a little far off for Marouane Fellaini
2' - Early possession by France
Here we go.... KICK-OFF TIME
*Time for National Anthems*Starting line-ups
Hugo Lloris (capt); Benjamin Pavard, Raphael Varane, Samuel Umtiti, Lucas Hernandez; Paul Pogba, N'Golo Kante; Kylian Mbappe, Antoine Griezmann, Blaise Matuidi; Olivier Giroud. Coach: Didier Deschamps (FRA)
Belgium (3-4-3): Thibaut Courtois; Toby Alderweireld, Vincent Kompany, Jan Vertonghen; Mousa Dembele, Marouane Fellaini, Axel Witsel, Nacer Chadli; Kevin De Bruyne, Romelu Lukaku, Eden Hazard (capt). Coach: Roberto Martinez (ESP)
Referee: Andres Cunha (URU)TEAM NEWS
Moussa Dembele was a surprise pick to replace the suspended Thomas Meunier in Belgium's line-up and Blaise Matuidi was restored to the France midfield for Tuesday's World Cup semi-final.
Matuidi missed the 2-0 quarter-final win over Uruguay due to suspension but has been recalled in place of Corentin Tolisso. Belgium's right wing back Meunier was cautioned for a second time in the tournament in their quarter-final victory over Brazil and Dembele takes his place in the starting side. Dembele will play alongside Axel Witsel in the centre of midfield with Belgium coach Roberto Martinez moving Marouane Fellaini to the right.
Nacer Chadli goes from the centre to the left where he will try to nullify the threat of speedy France striker Kylian Mbappe. Mbappe and midfielder Ngolo Kante were included in the France team despite sitting out training on Monday.