In-depth football guides and original World Cup 2026 coverage — written, not scraped. See also our daily What to Watch Today picks.
Everything you actually need to know about the first 48-team World Cup — three host nations, 104 matches, and a brand-new format explained in plain language.
Valencia twice fought back and had the ball, the shots, and the crowd. Real Sociedad had the goals that counted.
AC Milan controlled this one from the opening quarter-hour, and Lecce never had an answer.
Cucho Hernández gave Betis the lead before halftime, but Diego Villares headed Deportivo level with three minutes left to deny the visitors a fourth straight win.
Alberto Moleiro had a hand in all three Villarreal goals as the Yellow Submarine pulled clear after a nervy few minutes before halftime.
Francisco Conceição and Bremer did the damage as Juve kept their push going with a controlled home win.
Dean Huijsen's red card before the hour mark swung the derby, and Jonathan David made sure Atlético cashed in.
Frosinone had 35% of the ball and still won comfortably. Como controlled everything but the scoreboard.
Genoa controlled the ball and created the chances. Parma scored the goals that counted.
A scrappy, card-heavy afternoon at the Estadio Coliseum was decided in the 85th minute by a single clinical finish.
Billy Gilmour gave Napoli the lead, but Álex Jiménez's second-half equalizer kept Fiorentina from falling to a side that came in having lost three straight.
The Brazilian winger did it all — header, tap-in, long-range — as Barcelona cruised through the Pizjuán with barely a scare.
Two second-half goals — a Zaccagni penalty and a Noslin header — were enough to send Lazio home with maximum points from the Penzo.
Jay Da Silva's second-half strike gave Coventry City a result almost nobody saw coming, and Nottingham Forest's wastefulness in front of goal made it stick.
Borussia Dortmund made it five straight wins with a disciplined, ugly performance at the MHPArena — holding off a Stuttgart side that had more of the ball and ultimately not enough of the answers.
Pablo Durán's brace sealed a dominant home display that was never really in doubt after the first half hour.
Manu Koné put Roma in control with a first-half brace, but Lautaro Martínez had other plans — pulling Inter level with a brace of his own to salvage a point at the Olimpico.
A blistering opening burst at St. James' Park gave Newcastle all the breathing room they needed, even if Hull City made them sweat for it late.
Athletic dominated every number that mattered and still couldn't find a way through. Alavés came to survive, and they did.
Pascal Gross, Charalambos Kostoulas, and Chema Andrés did the damage as Brighton handed Arsenal their first defeat of the season.
Thierno Barry's early goal and a second-half dismissal of Fatawu Issahaku gave the Toffees a comfortable afternoon at Hill Dickinson Stadium.
Seven goals, a stoppage-time penalty, and a finish that left Gladbach wondering how they let this one slip.
Albert Grønbaek set up both goals before halftime and the restart, and Hamburg's low block did the rest — just barely.
Down two goals after 58 minutes, Bremen turned the game on its head — Füllkrug and Weiser completing the comeback in the final five minutes.
Four goals in 38 minutes, a dominant Freiburg that couldn't close it out, and a point that probably stings the visitors more.
Udinese had 65 percent of the ball, 26 shots, and 16 corners. Cagliari had one goal. That was enough.
Federico Bernardeschi gave Bologna an early lead, but Sandro Kulenovic's late equalizer denied the hosts a win they badly needed.
Budimir gave the hosts an early lead, but Sergio Camello leveled early in the second half and Rayo's dominance couldn't produce a winner.
Johan Manzambi's stoppage-time strike before the break set the tone. Villa did their damage on the counter and held on through a frantic finish.
Fer Niño scored twice in three minutes to set the tone, and ten-man Elche never looked back.
Monza barely touched the ball but found the net twice in the second half, holding off a late Sassuolo push at the U-Power Stadium.
Pape Gueye's brace — including a late penalty — sealed a comfortable win for the Yellow Submarine after Málaga had the lead for all of 28 minutes.
A goal on the stroke of halftime and a suffocating 75% possession share did the work at the Villamarín — Getafe never really threatened.
The Brazilian forward converted two penalties and added a third from open play to lead a commanding home performance, with Lamine Yamal pulling strings throughout.
Jonathan David, Lee Kang-In, Robin Le Normand, and Álex Baena made it a long night for a visiting side that barely had a sniff.
A single goal and a red card to Angeliño told the whole story in A Coruña.
Elche clawed back from two down to level the threat, but a 90th-minute winner from an unlikely source sent Real Madrid home with the points.
A late goal from an unlikely source ended Valencia's four-match losing run and handed Alavés a defeat they'll feel they didn't deserve.
Álvaro García set the tone inside three minutes, Rayo built a two-goal cushion before halftime, and then spent the rest of the night hanging on.
Villarreal had the ball, the shots on target, and the lead — and still walked away empty-handed.
Udinese led by two inside 16 minutes. It didn't matter. Inter's firepower was simply too much.
Donyell Malen broke the deadlock before half and Niccolò Pisilli sealed it in stoppage time as Roma made it four wins from five to start the season.
Jacobo Ramón and Kaiki did the damage. A late Parma goal made it look closer than it ever was.
Real Sociedad controlled large stretches of Sunday's match and had nothing to show for it. Three goals in the final six minutes told the whole story.
Juventus had the ball, the chances, and the pre-match probability. Sassuolo had the last word — twice.
Ramón Terrats gave the hosts the lead, but Pierre-Emerick Aubameyang's 78th-minute header kept Deportivo's unbeaten run alive in a 1-1 draw at the Estadio Coliseum.
A single goal from the midfielder in the 66th minute was enough at the Maradona, where Bologna barely threatened and left with nothing.
A five-minute opener from Xavi Espart set the tone, and Lamine Yamal did the rest — though Levante made the final scoreline look closer than the night actually was.
Lassana Coulibaly scored twice and Ivan Ilic ran the show early, but Monza made it interesting before Lecce hung on.
Celta Vigo led through Ferran Jutglà and looked set to finally turn a draw into a win — then the 83rd minute had other ideas.
A penalty inside 15 minutes set the tone, and Rayo's brief second-half response was never going to be enough.
Bruno Guimarães broke the deadlock on 58 minutes, and a chaotic finale — capped by Reinildo Mandava's red card and a Bukayo Saka penalty deep in stoppage time — confirmed five straight wins for the Gunners.
Cagliari turned 62% possession and 22 shots into nothing but frustration for Atalanta, escaping Bergamo with three points no one saw coming.
FC Cologne led for nearly an hour before Niclas Füllkrug leveled late — a result that satisfied nobody but somehow suited everyone.
Facundo Buonanotte's second-half spot kick looked like it might be enough — until Williams answered in the 79th minute to keep Elche winless on the road.
Tottenham had the ball, the shots, and the crowd. Everton had a plan. Neither side had a goal.
Lazio looked home and dry heading into the final half-hour. Then Diego Moreira scored twice in two minutes and everything changed.
The visitors needed just three minutes to take the lead and were done scoring before the half-hour mark. Osasuna's 61% possession never translated into a way back.
Liam Delap opened the scoring right after halftime, Villa leveled through Alysson, then Igor Jesus broke hearts in the 88th minute to give Forest a win nobody saw coming.
Two first-half headers flipped the game on its head after Axel Disasi's red card, and Zian Flemming's stoppage-time strike finished it.