A huge match was expected in the 2026 World Cup semifinals, and France and Spain delivered as they battled for a place in the final, with Spain finishing with a 2-0 victory thanks to goals from Mikel Oyarzabal and Pedro Porro.
The first half had few goal-scoring chances, but Spain took the lead through a penalty after Lamine Yamal was brought down by Lucas Digne while trying to reach the ball. Oyarzabal stepped up and fired a powerful shot to the left side of Mike Maignan, who went the right way but could not stop it.
Spain’s superior ball control became even more evident in the second half, with France unable to react. After a great combination between Porro and Dani Olmo, Porro went one-on-one against the goalkeeper and finished with precision to secure the victory.
Advertisement
Advertisement
Adrien Rabiot replaced by Manu Koné for France
Rabiot was substituted and Manu Koné came on for France.
Spain defeat France in the semifinal
90+7' The match ends.
Spain protect possession late in the match
90+3' Spain are keeping possession of the ball as they look to see out the final minutes.
Ousmane Dembélé's shot saved by Unai Simón for France
90+4' Ousmane Dembélé cut inside from the right and fired a left-footed shot, but it went straight into the goalkeeper's hands.
Added time
90' Seven minutes of stoppage time were added.
Advertisement
Advertisement
Kylian Mbappé's free kick goes over for France
89' Kylian Mbappé took the free kick but his shot went over the crossbar.
Lamine Yamal commits a foul for Spain
88' Lamine Yamal committed an unnecessary foul on Désiré Doué near the edge of the box.
Kylian Mbappé booked for France
85' Kylian Mbappé received a yellow card for a hard challenge on Unai Simón.
Spain make substitutions
83' Pedro Porro was replaced by Marcos Llorente, and Álex Baena was replaced by Nico Williams for Spain.
Désiré Doué's shot saved by Unai Simón for France
81' A poor pass from Spain in midfield gave France space for a long ball to Kylian Mbappé. Unai Simón came out and headed the ball away poorly, but Désiré Doué's shot went straight to the goalkeeper.
Advertisement
Advertisement
Ferran Torres' header goes close for Spain
78' A cross from the left found Ferran Torres, whose header went just wide.
Spain make midfield changes
77' Dani Olmo was replaced by Pedri, and Fabián Ruiz was replaced by Mikel Merino for Spain.
France push forward as Spain sit deeper
76' France are pushing higher up the pitch, with Spain waiting a little further back.
Mikel Oyarzabal replaced by Ferran Torres for Spain
73' Mikel Oyarzabal was substituted and Ferran Torres came on for Spain.
The match resumes
72' The match restarted after the hydration break.
Advertisement
Advertisement
Hydration break
69' The referee stopped the match for a hydration break.
France make changes
71' Michael Olise was replaced by Rayan Cherki, and Lucas Digne was replaced by Theo Hernández for France.
Kylian Mbappé's shot deflects wide for France
66' Kylian Mbappé fired a low right-footed shot across goal, but it deflected off Marc Cucurella and went just wide of the post.
Kylian Mbappé denied by Unai Simón for France
64' Kylian Mbappé broke down the left side and fired a shot on goal, but Unai Simón saved it and sent the ball out for a corner.
Lamine Yamal's goal ruled out for Spain
60' A through ball found Lamine Yamal, who cut inside and scored, but the goal was ruled out for offside.
Advertisement
Advertisement
GOAAAAAAAL Pedro Porro extends Spain's lead
58' A combination between Pedro Porro and Dani Olmo ended with Porro finishing to score the goal.
Bradley Barcola replaced by Désiré Doué for France
56' Bradley Barcola was substituted and Désiré Doué came on for France.
Mikel Oyarzabal's long-range shot goes wide for Spain
52' Mikel Oyarzabal tried a shot from distance, but it went wide.
Lamine Yamal misses a chance for Spain
50' A through ball found Lamine Yamal, but he could not finish well. He was also in an advanced position.
France push higher as Spain control possession
48' France are positioned further forward, but Spain continue to have control of the ball.
Advertisement
Advertisement
Second half begins
The second half has started.
Spain lead France at halftime
45+6' The first half ended with Spain ahead of France.
Six minutes of stoppage time
45' The referee added six minutes of stoppage time.
Kylian Mbappé denied by Unai Simón for France
41' A long pass found Kylian Mbappé, who was offside but it was not called. Unai Simón came out well outside his box and prevented the danger.
Fabián Ruiz's shot is blocked for Spain
38' A one-two between Lamine Yamal and Dani Olmo left a pass back to Fabián Ruiz, whose shot was blocked and went out for a corner.
Advertisement
Advertisement
Pedro Porro's long-range shot goes wide for Spain
37' Pedro Porro tried a shot from distance, but it went well off target.
Bradley Barcola's shot goes over the bar for France
36' Bradley Barcola received the ball on the left, cut inside, and fired a shot that went over the bar.
Dani Olmo's long-range shot goes wide for Spain
33' Dani Olmo took a shot from distance, but it went well wide of the goal.
Marc Cucurella receives a yellow card for Spain
31' Marc Cucurella was shown a yellow card for a foul on Michael Olise.
William Saliba replaced by Maxence Lacroix for France
30' William Saliba was unable to continue and was replaced by Maxence Lacroix for France.
Advertisement
Advertisement
William Saliba receives medical attention for France
28' William Saliba stopped play by holding the ball and asking for medical attention.
The match resumes
26' The match restarted after the hydration break.
Hydration break
23' The referee stopped the match for a hydration break.
GOAAAAAAL Mikel Oyarzabal gives Spain the lead
21' Mikel Oyarzabal struck a powerful left-footed shot across goal and scored.
Lamine Yamal wins a penalty for Spain
19' Marc Cucurella sent in a cross that Lucas Digne tried to clear, but Lamine Yamal got in the way and the referee awarded a penalty.
Advertisement
Advertisement
France remain dangerous on the counterattack
15' The match has a slow pace so far, but France are very dangerous whenever they recover the ball.
Álex Baena's free kick is blocked for Spain
10' Surprisingly, Álex Baena took the free kick instead of Lamine Yamal, but his shot hit the wall.
Dani Olmo wins a free kick for Spain
8' Spain were awarded a free kick after Dani Olmo was fouled near the edge of the box by Adrien Rabiot, who gets a yellow card.
Adrien Rabiot's shot goes wide for France
6' A long rebound from a corner fell to Adrien Rabiot, who hit a first-time shot that went well wide.
Spain control possession while France wait to counterattack
4' Spain keep the ball, but France are ready to launch quick counterattacks.
Advertisement
Advertisement
Unai Simón and Spain's early mistake
1' Unai Simón tried a risky move and misplaced a pass to Pedro Porro, but it did not lead to anything.
Kickoff
The match between France and Spain begins.
The referees
The referees for this match are Iván Barton (Referee - El Salvador), David Moran (Assistant Referee 1 - El Salvador), Antonio Pupiro (Assistant Referee 2 - Nicaragua), Glenn Nyberg (Fourth Official - Sweden), Mahbod Beigi (Reserve Assistant Referee - Sweden), Tomasz Kwiatkowski (Lead VAR - Poland), Dennis Higler (Assistant VAR - Netherlands) and Guillermo Pacheco (Support VAR - Mexico).
The next rival
The winner of this match will play Argentina or England in the final, which would be the fifth for France after winning in 1998 and 2018 and finishing as runners-up in 2006 and 2022, and the second for Spain, who won their only previous final in 2010.
Their campaigns
France are in this round after a perfect tournament that began with victories over Senegal, Iraq and Norway to finish first in Group I before beating Sweden 3-0, Paraguay 1-0 and Morocco 2-0. Spain also finished first in Group H with a draw against Cape Verde and victories over Saudi Arabia and Uruguay before beating Austria 3-0, Portugal 1-0 and Belgium 2-1.
World Soccer Talk, like Futbol Sites, is a company owned by Better Collective. All rights reserved. World Soccer Talk is reader-supported and may earn a commission through our partner links.