Spain have booked their place in the World Cup final after beating France 2-0 in the first semifinal, a result that ended Kylian Mbappe's bid for a third straight appearance in the title match and sent Spain back to the final for the first time in 16 years. Goals from Mikel Oyarzabal, converted from the penalty spot, and a clinical finish from right back Pedro Porro settled a contest that had been billed, before kickoff, as a clash between two of the tournament's most dominant sides.
Confirmed Lineups
Both head coaches sent out their strongest available squads, and the players had already gone through their pre-match warmups by the time team news was confirmed. France lined up with Mike Maignan in goal, a back four of Jules Kounde, Dayot Upamecano, William Saliba and Lucas Digne, a double pivot of Aurelien Tchouameni and Adrien Rabiot, and an attacking unit of Ousmane Dembele, Michael Olise and Bradley Barcola behind captain Kylian Mbappe.
Spain went with Unai Simon in goal, Pedro Porro, Pau Cubarsi, Aymeric Laporte and Marc Cucurella across the back, captain Rodri anchoring midfield alongside Fabian Ruiz and Dani Olmo, and a front three of Lamine Yamal, Alex Baena and Mikel Oyarzabal.
Selection Calls And The Bigger Picture
France made two changes to the side that reached this stage, bringing Bradley Barcola back into the attack and restoring Aurelien Tchouameni to midfield for the semifinal against Spain. Spain's coach Luis de la Fuente, by contrast, kept faith with the exact same eleven that had carried his side this far.
Desire Doue was the man to make way, dropping to the bench as Barcola took his attacking berth alongside Dembele, Olise and Mbappe. Tchouameni, who had missed France's previous two matches through injury, was passed fit to return and pair up with Rabiot in the middle of the park.
Spain kept Rodri, Fabian Ruiz and Dani Olmo together in midfield, which meant Pedri once again had to settle for a place among the substitutes rather than a starting shirt. Barcelona's Pedri has fallen short of his usual standards through this tournament, while Paris Saint-Germain's Fabian Ruiz repaid De la Fuente's faith by scoring Spain's opening goal in the win over Belgium. On his day, Pedri is one of the calmest, most rhythmic presences in any midfield in the world, but a taxing club season followed by a mid-tournament injury has blunted his World Cup form, and De la Fuente was widely expected to turn to him again later in the game. In attack, Alex Baena lined up alongside Lamine Yamal and Mikel Oyarzabal.
The scale of talent on the pitch was underlined by one simple fact: France had 2025 Ballon d'Or winner Ousmane Dembele in their ranks, while Spain countered with 2024 winner Rodri anchoring their midfield.
Top-ranked France, according to FIFA's rankings, went into the game against third-ranked Spain in a fixture that promised to be a heavyweight occasion in every sense. What made it even more notable was that all four of the teams occupying FIFA's current top four positions in the world rankings, France, Spain, Argentina and England, had made it through to the semifinals of this tournament.
The question hanging over the semifinal was whether the free-flowing French side, who had cruised through most of their World Cup fixtures, would continue to dominate, or whether Spain's possession-heavy, counter-pressing approach, built around a defence that had conceded only a single goal in six matches, would turn the tie in their favour. The match itself, fittingly, was being played on Bastille Day, 14 July, adding an extra layer of significance to an already eagerly awaited contest.
A Cagey Start Settles Into A Pattern Of Free Kicks
The first half kicked off with both sides still feeling each other out. Spain won an early corner in the fifth minute after a mistake from Pau Cubarsi, and moments later, at 5:54, Adrien Rabiot tried his luck from outside the box with his left foot, only to drag his effort wide of the far post.
France then gave away a free kick when Rabiot fouled Dani Olmo in the French attacking half around the eighth minute, and the same passage of play saw Rabiot booked at 8:22 for a reckless challenge as he scrambled to stop Olmo near the edge of his own box. It earned France a yellow card and handed Spain a dangerous free-kick opportunity in a threatening area.
By the tenth minute Alex Baena had already tested the French defence with a right-footed effort from outside the box that was blocked, and four minutes later Spain won another free kick through Rodri in French territory, this one conceded by Michael Olise. France then won a corner of their own in the 15th minute, again down to a mistake by the young Cubarsi, who was still settling into the rhythm of the biggest game of his career.
As the opening quarter of an hour unfolded, the tactical blueprint of each side became obvious. Spain wanted to dominate possession, flood central midfield with numbers and probe patiently for openings, while France preferred to sit off, win the ball and hurt Spain on the transition. Neither had yet carved out a clear-cut chance, but the intentions of both benches were plain to see. France's threat grew sharper as the half progressed, their rapid counters and incisive passing beginning to trouble a Spanish backline that, credit to them, kept snuffing out every danger that came their way.
The Penalty That Changed The Complexion Of The Game
The breakthrough arrived in unfortunate circumstances for France. At 19:23, Marc Cucurella sent a long ball into the French box that no Spanish attacker could reach, but Lucas Digne, attempting to clear the danger, mistimed his challenge and caught Lamine Yamal inside the penalty area. The referee pointed to the spot without any hesitation.
Mikel Oyarzabal stepped up at 21:52 and made no mistake, driving a firm left-footed strike into the top right corner of Mike Maignan's goal to put Spain 1-0 ahead. It was an emphatic penalty and Oyarzabal's fifth goal of the tournament, and it gave Spain the opening goal of the semifinal.
Play was paused for a water break shortly after, at 23:32, before both sides returned to the field and the game resumed at 26:13.
Saliba's Injury Forces France Into An Early Reshuffle
France suffered a fresh setback in the 29th minute when William Saliba went down without any contact from an opponent, a telltale sign of a muscular problem, and had to be replaced by Maxence Lacroix. Taking on defensive responsibility in a match of this magnitude, with almost no warning, was always going to be a stern examination for Lacroix.
Spain gave away a foul of their own through Marc Cucurella at 30:27, handing France a free kick that Michael Olise won on the right flank, and Cucurella was shown a yellow card moments later, at 30:29, for a rough challenge. Dani Olmo tried his luck from range in the 33rd minute, his right-footed effort drifting over and wide after being teed up by Fabian Ruiz, and Alex Baena was flagged offside soon after, at 33:51.
Olise won another free kick on the left in the 34th minute, this one earned after Rodri was penalised for a foul, and Bradley Barcola then had a crack from distance at 35:45, his right-footed shot, set up by Ousmane Dembele, sailing over and wide. France were working hard throughout this passage, doing everything they could to disrupt Spain's rhythm on the ball, but their pressure was not translating into clear openings because their passing in the final third lacked precision. At the other end, teenage defender Pau Cubarsi showed real game intelligence, cutting out a sharp pass threaded towards Mbappe at exactly the right moment.
Chances Flicker At Both Ends Before The Interval
Pedro Porro tried his own long-range effort in the 36th minute, his right-footed shot drifting wide of the left post after Fabian Ruiz created the opening, and Spain won a corner soon after, at 37:11, when Dayot Upamecano gave the ball away under pressure. Moments before that corner, Fabian Ruiz had a shot from inside the box blocked, at 37:09, after Lamine Yamal supplied the assist, capping off a slick passing sequence between Ruiz, Yamal and Olmo that showcased everything Spain's midfield does well, even though the eventual shot drifted off target.
Lucas Digne won a free kick in France's own defensive half at 38:14, only for Yamal to be penalised for a foul at the same mark. Rodri was then penalised for a foul of his own at 38:58, gifting Olise a free kick in French territory, and Kylian Mbappe was caught offside at 39:22 as another French attack broke down. Spain's back line had begun using the offside trap smartly and repeatedly to snuff out France's forward runs, and Mbappe was caught out again at 40:03.
Despite trailing by a goal, France did not look like a side in panic, seemingly treating the tie as a longer contest to be won over ninety minutes rather than a game to be rescued in a hurry. Even so, goalkeeper Mike Maignan looked uneasy under pressure on more than one occasion, giving the ball away cheaply in dangerous areas close to his own goal.
Aymeric Laporte needed treatment at 42:30, stopping play briefly, while France had already won a corner moments earlier, at 41:53, when Pau Cubarsi conceded possession. Play resumed at 43:12 once the delay ended. Around this passage of play, Unai Simon produced a brave piece of goalkeeping, rushing well off his line and out of his box to deny Mbappe what had looked like a simple scoring opportunity.
A further stoppage followed, this time caused from Spain's side at 43:18, before play resumed once more at 43:57. Fabian Ruiz won a free kick in Spain's defensive half at 44:59, the same mark at which Adrien Rabiot conceded one for France after a foul, and Alex Baena won another free kick for Spain in their own half at 45:55, with Jules Kounde penalised at the same minute mark for France. The fourth official signalled six added minutes at the end of the first half, at 45:08, and Rabiot was then caught offside at 47:03 as France pressed for a way back before the break.
It had been a half that hinted at promise for France without ever settling into a rhythm. Their passing errors in buildup play were particularly striking, a jarring contrast to the composed, precise transitions that had defined their run through the tournament so far. France did win one more free kick on the right flank through Jules Kounde at 48:58, with Alex Baena penalised for the foul, before the referee brought the half to a close.
Half-Time: Spain Ahead, France Needing Answers
The first half ended with Spain leading 1-0. Fortune had played a part in Spain's opening goal, with the penalty stemming from Lucas Digne misjudging an aerial ball, but Spain's passing game and pressing had also made life uncomfortable for France well beyond that moment. France did carve out some openings on the counter, but a lack of precision and coordination in the final third meant clear-cut chances were rare. For long stretches of the opening period, France never really found their usual attacking sharpness and were pushed back into their own defensive half far more often than they would have liked.
France made their move at the break, sending on Manu Kone in place of Adrien Rabiot. The change was not a surprise, the AC Milan midfielder was already carrying a yellow card after a rough tackle and had come close to a second caution, and head coach Didier Deschamps clearly wanted greater discipline and control restored in his midfield for the second period.
Porro's Strike Doubles Spain's Advantage
The second half began with the score still reading France 0, Spain 1. Dayot Upamecano won a free kick in his own defensive half at 48:14, with Fabian Ruiz penalised for the foul, and Mikel Oyarzabal won a free kick of his own in a similar area at 49:29 after Maxence Lacroix fouled him, conceding possession to Spain.
France came out for the second period looking noticeably more aggressive, trying to wrestle the ball back from Spain through tougher challenges. Mikel Oyarzabal fired over the bar from outside the box with his left foot at 51:24 after Alex Baena created the chance, and Lamine Yamal was flagged offside once again in the 50th minute after Pedro Porro slipped him through on goal, the youngster caught marginally short of the last defender. Yamal broke forward again soon after only for Manu Kone to throw himself fully into a challenge and snuff out the danger at a crucial moment.
France made a change in the 56th minute, sending on Desire Doue in place of Bradley Barcola, while Spain saw another attack break down around the 55th minute when Alex Baena was ruled offside. Unai Simon, by this stage, was delivering arguably his finest performance of the entire World Cup, his positioning proving close to flawless throughout. De la Fuente's decision to select Simon ahead of the Premier League's Golden Glove winner David Raya and Barcelona's Joan Garcia was being vindicated in real time, with the goalkeeper's courage off his line and his timely interceptions standing out.
Then, at 57:33, Spain doubled their lead. Pedro Porro struck from the centre of the box with his right foot, sending the ball into the bottom right corner after a superb assist from Dani Olmo. Spain looked utterly composed throughout the move, absorbing France's pressure without losing their nerve before breaking forward with real conviction. Olmo had carved out space between France's defensive lines and picked out the onrushing Porro with a precise pass, and the right back finished the chance without a moment's hesitation. Moments earlier, at 57:17, Baena had a right-footed effort from outside the box blocked after Olmo set him up.
France Search For A Way Back As Simon Stands Firm
Lamine Yamal was caught offside again at 60:23 as another Spanish move was halted. Attention increasingly turned to whether Mbappe could produce something akin to the magic that defined his performance in the Qatar final, with France now needing exactly that kind of intervention.
France won a corner at 64:18 after Pedro Porro put the ball behind, but Manu Kone conceded a free kick through a foul at 64:58, the same mark at which Dani Olmo won one for Spain in his own defensive half. A genuine chance went begging at 64:37, when, following a corner and a cross from Michael Olise, Aurelien Tchouameni struck from the centre of the box with his right foot only to see the ball clear the crossbar.
Another corner followed for France at 66:33 after Marc Cucurella put the ball out, and Mbappe saw a right-footed effort from the right side of the box blocked at 66:31. France were gradually clawing their way back into the contest, with one of Mbappe's trademark efforts towards goal deflected behind for a corner. A minute later, in the 67th minute, Desire Doue had a right-footed shot from outside the box blocked as well, set up by Olise. France's route back into the game increasingly relied on individual efforts down the flanks, winning two corners through a fine Mbappe run and a half-chance strike at goal, though Spain's resolute defensive shape kept the danger under control throughout. Mbappe himself was then flagged offside at 67:23.
Jules Kounde conceded a free kick through a foul at 68:31, with Alex Baena winning one for Spain on the left wing at the same mark, before play was halted for a drinks break at 68:48. With more than two-thirds of the match gone, France looked visibly desperate to win back possession in midfield, but that urgency was spilling over into unnecessary fouls that disrupted their own rhythm, a risky approach for a team that needed two goals to level the tie.
France made a substitution at 71:55, bringing on Theo Hernandez for Lucas Digne, moments after play resumed at 71:06 following the earlier stoppage. There was every indication that Spain would soon make changes of their own, particularly aimed at injecting fresh legs into midfield, with Pedri and Mikel Merino expected to get their chance on the pitch before long.
In the 72nd minute France made a double change, sending on Rayan Cherki for Michael Olise, who had fallen well below his usual standards in this match, while Theo Hernandez took over at left back from Lucas Digne. Aurelien Tchouameni won a free kick on the left for France at 72:27, with Dani Olmo penalised for the foul, and Spain responded by taking off Mikel Oyarzabal for Ferran Torres at 73:48.
Lamine Yamal was penalised for a foul at 75:37, the same moment at which Mbappe won a free kick for France on the left wing, while Ferran Torres was caught offside at 74:01 as another Spanish attack was cut short. Maxence Lacroix conceded a foul at 76:30, and Rodri won a free kick for Spain in his own defensive half at the same mark. Spain made another change at 77:04, replacing Dani Olmo with Mikel Merino, and Ferran Torres wasted a chance at 77:49, heading over from the centre of the box when well placed on the left side. Spain then brought on Pedri for Fabian Ruiz at 77:11, meaning, exactly as many had anticipated, both Pedri and Merino were now on the pitch in place of Olmo and Ruiz.
Late Cards, A VAR Review And Stoppage-Time Chances
France won a free kick through Manu Kone in the attacking half at 78:35, with Rodri penalised for the foul. All of France's hopes now rested squarely on the shoulders of captain and talisman Mbappe, who made a strong run down the left before Lamine Yamal fouled him to stop the danger, though the resulting free kick brought France no reward.
Pedri showed his quality almost the moment he stepped onto the pitch, linking up in a lovely passing move with Alex Baena, whose precise pass found Ferran Torres, though Torres's header ultimately missed the target. France then had a good sight of goal at 80:55, when Desire Doue's left-footed shot from outside the box was saved by Unai Simon, the ball tipped away between the top corners of the goal. Simon once again rushed well off his line to push the ball clear of Mbappe, though his clearance did not fully eliminate the danger, and Doue could not quite capitalise as his effort arrived a fraction late, allowing the quick-reacting Spanish goalkeeper to deny him.
Spain made a substitution at 83:12, taking off Pedro Porro for Marcos Llorente, part of a double change that also freshened up their side by bringing on Nico Williams for Alex Baena at 83:13, replacing the impressive Porro and Baena in one go. A VAR review at 82:42 saw a second decision overturned. Rodri was penalised for a foul at 84:53, the same mark at which Ousmane Dembele won France a free kick on the left wing, while Theo Hernandez won a free kick for France in his own defensive half at 83:39, with Ferran Torres penalised for the foul at that mark.
Unai Simon won a free kick for Spain in his own defensive half at 85:43, and Kylian Mbappe was shown a yellow card at 85:45 for a rough foul, having already been penalised for the challenge at 85:43. Lamine Yamal was penalised for a foul at 87:22, the same minute at which Desire Doue won a free kick for France in the attacking half.
With Spain firmly controlling the tempo of the match, France were struggling to find any rhythm of their own, rushing into the penalty area in desperation whenever they found an opening, only to repeatedly fail to make the most of those limited opportunities. Mbappe stepped up for a direct free kick from outside the box at 88:07, his right-footed effort flying well over the crossbar. France won a corner at 89:49 after Marc Cucurella put the ball out, and around this passage of play France also had to defend resolutely at their own end, with Tchouameni producing a crucial late clearance to deny Nico Williams a clear sight of goal. At the other end, Doue was fouled by Yamal just outside the box to win a free kick, though Mbappe's resulting effort sailed well over the bar.
The fourth official signalled seven minutes of stoppage time at the 90 minute mark. France launched one more desperate attack soon after, stringing together some neat passes near the box, but Marc Cucurella stayed alert throughout and cleared the ball away just before it could reach Mbappe's feet.
Rodri won a free kick for Spain in his own defensive half at 92:37, the same mark at which Manu Kone was penalised for a foul, conceding possession to Spain. Nico Williams then tried a left-footed effort from a difficult angle on the left at 93:44, the ball drifting just wide of the far post after Ferran Torres created the chance. Ousmane Dembele forced a fine save at 94:18, his powerful left-footed shot from the right side of the box heading for the top right corner before Unai Simon produced a brilliant stop, the chance created by Rayan Cherki. Dembele went close again at 96:11, this time striking with his right foot from the right side of the box after being set up by Desire Doue, only for Simon to save comfortably in the middle of his goal. It was a better attempt from Dembele but it did not change the scoreline, and Mbappe made one final effort on goal shortly afterwards that also came to nothing.
Full Time: Spain Book Their Final Spot After 16 Years
The final whistle confirmed a 2-0 win for Spain, with the second half ending exactly as it had been for some time, France 0, Spain 2. Spain have returned to a World Cup final after a gap of 16 years, and it was a thoroughly disciplined display, built on control of possession and an excellent pressing structure. Spain's passing was noticeably sharper than a French side that looked short of direction for long periods, and it meant France's attacking line was never able to generate genuinely dangerous opportunities in Spain's half of the pitch.
For Kylian Mbappe, this marks the first time in his career that he has fallen short of reaching a World Cup final. He had taken to the field hoping to reach a third consecutive final, only to suffer a heavy defeat at the hands of Spain. Spain's overall performance evoked memories of the golden era under coach Vicente del Bosque, when Iker Casillas, Sergio Ramos, Xavi Hernandez and Carles Puyol delivered the title for La Roja 26 years ago.
In summary, Spain defeated France 2-0 in this World Cup semifinal, with standout performances from Mikel Oyarzabal and Pedro Porro securing their place in the final. That brings this live coverage to a close. Readers are invited to follow along again for tomorrow's semifinal between Argentina and France.



















