Spain deliver World Cup masterclass against France to reach final

(From L) Spain's midfielder #06 Mikel Merino, forward #25 Victor Munoz, forward #07 Ferran Torres, forward #21 Mikel Oyarzabal and midfielder #16 Rodri celebrate after winning the 2026 World Cup football tournament semi-final match between France and Spain at the Dallas Stadium in Arlington on July 14, 2026

(AFP photo)
(From L) Spain's midfielder #06 Mikel Merino, forward #25 Victor Munoz, forward #07 Ferran Torres, forward #21 Mikel Oyarzabal and midfielder #16 Rodri celebrate after winning the 2026 World Cup football tournament semi-final match between France and Spain at the Dallas Stadium in Arlington on July 14, 2026 (AFP photo)

Arlington, United States — Spain snuffed out France's dream of a third World Cup triumph on Tuesday, taming their galaxy of forwards to win 2-0 and progress to a final against England or Argentina.

Didier Deschamps' men were hot favourites for the trophy after a string of breathtaking displays in the United States but they met their match against the slick European champions at the semi-final stage.

Mikel Oyarzabal opened the scoring for the 2010 winners with an emphatic penalty in the first half in Arlington, Texas, and Pedro Porro doubled their lead in the second half.

Shell-shocked France could not find a way back into the match despite their wealth of attacking riches.

The game at the AT&T Stadium caught fire midway through the first half when Salvadoran referee Ivan Barton pointed to the penalty spot after a reckless challenge by France left-back Lucas Digne on Spain winger Lamine Yamal.

Oyarzabal hammered the ball past France goalkeeper Mike Maignan for his fifth goal of the World Cup to leave France trailing for the first time in the tournament.

Minutes later they suffered another blow when centre-back William Saliba had to leave the pitch after a recurrence of his lower back injury, replaced by Crystal Palace defender Maxence Lacroix.

Spain went agonisingly close to extending their lead after some dazzling one-touch football but Dayot Upamecano's challenge denied Fabian Ruiz.

France finished the half without a single shot on target, and just two attempts overall.

Deschamps threw on Desire Doue for Bradley Barcola in the 57th minute in a bid to supercharge his attack but a minute later they were 2-0 down after a stunning team goal for Luis de la Fuente's men.

Defender Porro delivered a sharp pass to the feet of Dani Olmo on the edge of the box and collected the return ball before coolly slotting past Maignan.

Deschamps threw on Theo Hernandez and Rayan Cherki after the second hydration break in a desperate bid to get back into the match.

But France could not find a way back into the game against solid opponents who refused to yield.

Spain have conceded just once in the entire tournament, combining defensive steel with the trickery of winger Yamal in attack.

They are now just 90 minutes away from winning the first-ever 48-team World Cup as they seek to match the achievement of Vicente del Bosque's team 16 years ago.

Defeat in Texas is a bitter blow for a France team that has enthralled fans at the World Cup in Canada, Mexico and the United States.

France had reached the past two World Cup finals, winning in 2018 in Russia and losing on penalties to Lionel Messi's Argentina four years ago in Qatar in an epic final despite a hat-trick from Mbappe.

Real Madrid forward Mbappe was just one cog in a star-studded attack that also included Ballon d'Or winner Ousmane Dembele and the elegant Michael Olise.

Defeat leaves just the third-place play-off for France coach Didier Deschamps, who is stepping down after the tournament following 14 years in charge.

Kane v Messi

In the other semi-final in Atlanta on Wednesday, England and Argentina will lock horns in the latest chapter of one of the game's most compelling rivalries.

The history of matches between the nations is peppered with incidents, set against a lingering sovereignty dispute over the Falkland Islands, known in Spanish as the Malvinas, in the South Atlantic Ocean.

The encounter takes place 40 years after Diego Maradona's infamous "Hand of God" goal helped Argentina to a 2-1 win at the 1986 World Cup in Mexico.

England captain Harry Kane, who is competing against Messi and Mbappe for the Golden Boot, said his team would not be distracted by emotional baggage around the fixture.

"From a player's point of view it's us against a great team, who are smart, who are tactical, who know how to buy fouls, know how to slow the game down -- like many different teams you come up against throughout your whole career," Kane told ITV.

.col-lg-12.second .opinion-widget{border-top:1px solid #D0D0D0;} #widget_1623 .opinions-title {font-size:32px;} #widget_1623 .opinions-title a{font-size:32px;} .first-author{ background-color:#ecedef; } .first-opinion-author-name{ background-color:white; width:max-content; padding:5px; }
.epaper-separator{ height: 1px; width: 100%; background-color: #D0D0D0; margin: 15px 0; }

Today’s Paper

.related-articles .article-widget-sm .article-title{font-size:16px;-webkit-line-clamp:3;} .related-articles .layout-ratio{padding-bottom:55%;}
.alert-success { color :#A3656F ; } .alert-danger { color : red ; } .footer { font-family:Myriad Pro,Arial; } .newspaper-footer{ visibility:hidden; } .socialFixOuter { position: fixed; top: 50%; margin-top: 40px; right: 0; transition: .2s; z-index: 20; height: 217px; width: 40px; } .socialFix { height: 30px; width: 30px; display: block; position: relative; cursor: pointer; background-size: 18px 18px; transition: .2s; background-position: center; background-repeat: no-repeat; border-radius: 2px; margin-top: 1px; } .socialFix:hover { width: 40px; margin-left: -10px; } .app-badge-img { height: 36px; width: auto; } @media (max-width: 768px) { .app-badge-img { height: 32px; } .app-badges { justify-content: center !important; } }
document.addEventListener("DOMContentLoaded", function () { const socialFix = document.querySelector(".socialFixOuter"); if (!socialFix) return; let firstInteraction = false; let hideTimeout = null; function checkMobileScreen() { if (window.innerWidth < 768) { socialFix.style.display = "none"; } else { socialFix.style.display = "block"; } } checkMobileScreen(); window.addEventListener("resize", checkMobileScreen); function handleFirstInteraction() { if (firstInteraction) return; if (window.innerWidth < 768) return; firstInteraction = true; socialFix.style.right = "-25px"; } socialFix.addEventListener("mouseenter", function () { if (window.innerWidth < 768) return; if (hideTimeout) clearTimeout(hideTimeout); socialFix.style.right = "0"; }); socialFix.addEventListener("mouseleave", function () { if (window.innerWidth < 768) return; if (hideTimeout) clearTimeout(hideTimeout); hideTimeout = setTimeout(() => { socialFix.style.right = "-25px"; }, 500); }); ["click", "touchstart"].forEach((evt) => { socialFix.addEventListener(evt, handleFirstInteraction); }); }); function validateEmail(email) { if (email.length > 255) return false; const emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/; if (!emailRegex.test(email)) return false; if (email.includes('..') || email.startsWith('.') || email.endsWith('.')) return false; return true; } function sanitizeInput(input) { input = input.replace(/<[^>]*>/g, ''); input = input.replace(/javascript:/gi, ''); input = input.replace(/on\w+\s*=/gi, ''); input = input.replace(/[<>"'&(){}[\]]/g, ''); return input.trim(); } document.addEventListener('DOMContentLoaded', function () { function showModal(message, type) { const messageContainer = document.getElementById("messageContainerFooter"); messageContainer.textContent = message; messageContainer.className = `alert alert-${type} mt-3`; messageContainer.classList.remove("d-none"); setTimeout(() => { messageContainer.classList.add("d-none"); }, 5000); } document.getElementById("emailFormFooter").addEventListener("submit", function(event) { event.preventDefault(); const emailInput = document.getElementById("emailFooter"); const email = sanitizeInput(emailInput.value.trim()); if (!validateEmail(email)) { showModal('Invalid email format', 'danger'); return; } const formData = new FormData(); formData.append('email', email); fetch('/subscribeNewsletter', { method: "POST", body: formData, headers: { "Accept": "application/json", "X-Requested-With": "XMLHttpRequest" } }) .then(response => { if (!response.ok) { showModal("Error submitting email. Try again.", 'danger'); } return response.json(); }) .then(data => { showModal(data.message, 'success'); }) .catch(error => { showModal("Error submitting email. Try again.", 'danger'); }); }); });