Match reviews
Post-match reports and full-time analysis from across Europe's top leagues, newest first.

Hippolyte Free Kick Seals 1-0 Win for AFC Wimbledon as Doncaster Waste 22 Shots
Myles Hippolyte's first-half free kick proved the difference as AFC Wimbledon held on for a 1-0 League One victory over Doncaster Rovers, who created chance after chance and finished with nothing to show for it.

Stoke City Steal It in Stoppage Time: Watford 1-2 Stoke City
Watford dominated large portions of this Championship fixture but paid the ultimate price for wastefulness in front of goal, as Amin Nabizada's 90th-minute winner sealed a gut-punch defeat at Vicarage Road.

Conn-Clarke Rescues a Point for MK Dons in 1-1 Draw with Peterborough
Chris Conn-Clarke's 85th-minute equaliser earned Milton Keynes Dons a share of the spoils against Peterborough United, who had led through Aaron Collins since the 29th minute.

Viseu Hold On For 2-1 Win Over Vitória Guimarães As Late Bouldini Goal Sets Up Nervy Finish
Academico Viseu claimed a hard-fought 2-1 victory over Vitória Guimarães in the Liga Portugal, with substitute Gonçalo Nogueira's second-half goal proving the difference despite a frantic late response from the visitors.

Beveren 2-0 Sint-Truiden: Compact, Clinical, and Completely Deserved
SK Beveren shut out Sint-Truiden with a disciplined second-half performance in the Belgian Pro League, with Chris Lokesa's penalty and Jearl Margaritha's finish doing the damage. Sint-Truiden had the ball and wasted it completely.

Southampton 4-1 Bristol City: Larin Brace Seals Commanding Home Win
Southampton put Bristol City to the sword at St Mary's, with Cyle Larin scoring twice and the hosts converting their chances with clinical efficiency in a 4-1 Championship victory. The scoreline tells you everything you need to know about who competed harder on the day.

Forest Win 2-1 at Villa Park: Delap and Igor Jesus Sink a Villa Side That Never Competed
Nottingham Forest came to Villa Park and took all three points with a 2-1 win, and Aston Villa have absolutely nobody to blame but themselves. They were outworked, outshot, and outthought.

Las Palmas Silence Cádiz With Enrique Clemente's Second-Half Strike in La Liga 2
Las Palmas took all three points at Cádiz thanks to a cool finish from Enrique Clemente on the hour mark, leaving Cádiz without a win in their last five La Liga 2 matches.

Roberto Fernández Brace Sinks Osasuna as Espanyol Win 2-0 in La Liga
Roberto Fernández scored twice inside 17 minutes to give Espanyol a commanding 2-0 victory away at Osasuna, a result that tells you everything about where both clubs are right now.

Twente 2-0 ADO Den Haag: Weghorst Penalty and Pröpper Header Seal Comfortable Eredivisie Win
Twente made it four wins from their last five Eredivisie matches with a controlled 2-0 home victory over ADO Den Haag, who offered little going forward and were second best in every department that matters.

Almería Win 2-0 at Córdoba Despite Being Outshot 21-4
Almería took all three points at Córdoba with goals from Brian Cipenga and substitute Thalys, winning 2-0 despite Córdoba dominating possession and creating far more attempts on goal.

Sunderland 0-2 Arsenal: Guimarães and Saka Penalty Sink Ten-Man Sunderland
Arsenal claimed a composed 2-0 Premier League victory at Sunderland, with Bruno Guimarães scoring on his second-half introduction before Bukayo Saka converted a late penalty to settle the contest.

Real Madrid 4-1 Rayo Vallecano: Mbappé and Bellingham Put Rayo to the Sword at the Bernabéu
Real Madrid swept aside Rayo Vallecano 4-1 in La Liga, with Kylian Mbappé grabbing a penalty and a late second while Jude Bellingham and Álvaro Carreras added further goals to put the result beyond any doubt.

Krys Kouassi Penalty Salvages Point for Cercle Brugge in Chaotic 1-1 Draw at OH Leuven
Cercle Brugge snatched a stoppage-time equaliser through Krys Kouassi's penalty to deny OH Leuven a first win of their recent Belgian Pro League run, finishing 1-1 in a bad-tempered match that ended with cards flying and a VAR check in added time.

Union Saint-Gilloise 5-0 Lommel SK: Total Domination From Minute Three
Union Saint-Gilloise put on a ruthless display at home, scoring five without reply to dismantle Lommel SK completely. Raul Florucz came off the bench to grab two late goals and put the final stamp on a performance that left nothing to debate.

Le Havre 0-0 Angers: Visitors Outshot Hosts But Neither Side Could Find the Net
A goalless draw at Stade Océane saw Angers create the better chances with 16 shots to Le Havre's nine, but the home goalkeeper stood firm with six saves to preserve parity.

Cambuur 3-0 NEC Nijmegen: Hamache Brace Sends Struggling Visitors to Another Eredivisie Humbling
SC Cambuur put NEC Nijmegen to the sword with a commanding 3-0 victory, with Ilyes Hamache scoring twice and substitute Iwan Henstra adding a late third. NEC's wretched evening was compounded by four yellow cards and a defensive display that had no backbone whatsoever.

Paris FC 0-0 Lyon: Hosts Dominate But Lack the Cutting Edge to Break Through
Paris FC controlled large portions of this Ligue 1 clash and created the better chances, but Lyon's goalkeeper and resolute defence kept the hosts out to secure a point at the Parc des Princes.

Cagliari Stun Atalanta 2-1 at Bergamo: How the Visitors Dominated from First to Last
Cagliari produced a controlled, dominant display to beat Atalanta 2-1 in Serie A, with Gianluca Scamacca's first-half equaliser and a second-half penalty miss from Daniel Maldini proving the turning point. Atalanta were second best for most of this match, and the numbers tell you exactly why.

Cameron Archer Punishes Auxerre's Wastefulness as Nice Win 1-0 at Abbé-Deschamps
Nice took all three points in Ligue 1 despite being second best for large parts of the match, with Cameron Archer's 74th-minute strike settling a contest Auxerre simply did not deserve to lose on the balance of play.
