Villarreal 0-2 Manchester City result - UEFA Champions League latest as goals from Erling Haaland and Bernardo Silva give City comfortable win

Champions League / League Phase
Estadio de la Cerámica / 21.10.2025
Live
Live Updates

  • All
  • Highlights
FT
Article
FT
Article
CITY CONTINUE UNBEATEN START WITH SIMPLE VICTORY IN VILLARREAL
Manchester City eased to a 2-0 victory over Villarreal thanks to first-half goals from Bernardo Silva and Erling Haaland, who scored in his 12th successive game to help Pep Guardiola’s side continue their unbeaten start to the UEFA Champions League.
Facing a free-scoring Villarreal with a fantastic home record, City barely had to get out of second gear in Spain as after missing two good early chances, Haaland finally found his mark 17 minutes in after a superb Rico Lewis cross.
On a night where Jeremy Doku was pocketed by Santiago Mourino, Manchester City instead found plenty of joy on the right flank and that was the source of their second goal too when Matheus Nunes fizzed in a cross to the unmarked Silva in an embarrassing defensive episode for the home side.
The only blemish for Pep Guardiola was an injury to Nico Gonzalez’s right leg, with the Spaniard limping off before the hour mark, while Renato Veiga struck the post late on as Villarreal belatedly clicked into gear and threatened Gianluigi Donnarumma’s net with two strong headed chances.
But they were exceptional moments in an otherwise lacklustre display from the hosts as City cruised up to fifth in the League Phase table and are guaranteed to end the week in the all-important top eight.
picture

Highlights: Haaland scores for 12th game running as Man City brush aside Villarreal

Video credit: TNT Sports


FT
FT
A FEAST OF FOOTBALL LIVE ON TNT SPORTS AND DISCOVERY+
From title deciders to relegation six-pointers, TNT Sports offers exclusive Premier League games with access to 52 fixtures this season - alongside over 185 UEFA Champions League matches and every UEFA Europa League and Conference League match exclusively live. Plus, the Emirates FA Cup, Adobe Women's FA Cup and Serie A.
Which Premier League matches are on TNT Sports?
The following games will be shown live on TNT Sports:
SAT 25 OCTBRENTFORD v LIVERPOOL20:00
SAT 1 NOVLIVERPOOL V ASTON VILLA20:00
SAT 8 NOVTOTTENHAM HOTSPUR V MANCHESTER UNITED12:30
SAT 22 NOVBURNLEY V CHELSEA12:30
SUN 30 NOVCRYSTAL PALACE V MANCHESTER UNITED12:00
For the latest information on which football matches are on TNT Sports, click here.
And for the full Premier League schedule, click here.

FT
FT
UEFA CHAMPIONS LEAGUE RESULTS
Just the 43 goals in the UEFA Champions League tonight! Spare a thought for Kairat Almaty and Pafos who were both chasing their first wins at this level but failed to score in one of the early kickoffs, apart from that it's been a goaltastic return to European action.
And that's just the start, we have nine more games tomorrow all live on TNT Sports and discovery+, and every match in the UEFA Europa League and Conference League on Thursday with seven British teams in action!
Tuesday results:
Kairat Almaty 0-0 Pafos
Villarreal 0-2 Manchester City
PSV Eindhoven 6-2 Napoli
FC Copenhagen 2-4 Borussia Dortmund
Bayern Leverkusen 2-7 PSG
Union Saint-Gilloise 0-4 Inter Milan
Wednesday: Galatasaray v Bodo/Glimt, Athletic Club v Qarabag FK (both 17:45), Eintracht Frankfurt v Liverpool (live on TNT Sports 1), Chelsea v Ajax (live on TNT Sports Ultimate and TNT Sports 2), Monaco v Tottenham (live on TNT Sports 3), Atalanta v Slavia Prague, Real Madrid v Juventus, Sporting CP v Marseille, Bayern Munich v Club Brugge (all 20:00, live on discovery+).
Selected Thursday fixtures: Go Ahead Eagles v Aston Villa (live on TNT Sports 1), Brann v Rangers (live on TNT Sports 2), AEK Athens v Aberdeen (live on TNT Sports 2, all 17:45), Nottingham Forest v Porto (live on TNT Sports Ultimate and TNT Sports 1), Celtic v Sturm Graz (live on TNT Sports 2), Crystal Palace v AEK Larnaca (live on TNT Sports 3), Lincoln Red Imps v Lech Poznan, Shamrock Rovers v NK Celje (all 20:00, live on discovery+).
picture

'They don't need to check for that!' – VAR confusion as Olympiacos goal ruled out and penalty given

Video credit: TNT Sports


FT
Whistle
FT
Whistle
FULL-TIME: VILLARREAL 0-2 MANCHESTER CITY
A Luiz Junior launch comes to nothing, and City spend the last few moments spreading the ball around the back before the final whistle sounds. This was about as comfortable a games as you can get in the UEFA Champions League.
90'
90'
FOUR ADDED MINUTES
Which is probably about three-and-a-half more than this contest needs...
88'
88'
HIT THE POST!
This has been such a straightforward night for City, yet it could be 2-2 now! Renato Veiga rises highest from a corner and heads across a helpless Donnarumma, who gratefully watches the ball bounce off the post and back out. That's Villarreal's best chance of the night.
85'
Card - Yellow
85'
Card - Yellow
RASH FROM CARDONA
Both Villarreal left-backs have picked up yellow cards tonight with Cardona entering the book for tripping Bobb who was attempting to break upfield.
Meanwhile both benches are now empty as Guardiola has introduced Rayan Cherki and Omar Marmoush for Haaland and Savino.
83'
Substitution
83'
Substitution
MORE HAALAND, MORE CHANGES
Haaland wants another! And who's to say he won't get it, he surges into the box moving across the face of goal and slams a shot that once again requires a fantastic save by Junior.
Dani Parejo is on for the hosts as they require a goal, with Pape Gueye making way alongside Santi Comesana for Ayoze Perez.
80'
80'
WHAT A CHANCE!
Haaland has barely had a touch this half until now, and he almost grabbed his second there! Kovacic sprays a beautiful pass forwards and the Norwegian kills the ball with one touch, then fizzes a low shot that Junior has to stretch to stop.
77'
77'
CONTROL RE-ESTABLISHED
That Pepe scare has woken City up from their slumber and Villarreal haven't seen the ball since those introductions, they say 2-0 is the most dangerous scoreline in football yet City aren't looking at risk at all.
73'
Substitution
73'
Substitution
TWO SUBS FOR CITY
Guardiola introduces Tijjani Reijnders and Oscar Bobb for Lewis, who assisted the opening goal, and Doku.
71'
71'
GREAT CHANCE FOR VILLARREAL!
That's probably in the 'had to score' bracket! Villarreal's best spell of the half saw Pape Gueye sting the palms of Gianluigi Donnarumma before the hosts recycle and give Pepe a free header!
It flies just over the bar though, will they get another chance that good?
68'
Substitution
68'
Substitution
MORE CHANGES
After his half-time alteration failed to spark Villarreal into life, Marcelino has brought on two more new faces - Alberto Moleiro and Tani Oluwaseyi for Mikautadze and Buchanan.
In other news, Arsenal have doubled their lead over Atletico Madrid thanks to Gabriel Martinelli.
65'
Card - Yellow
65'
Card - Yellow
DIAS BOOKED
Junior finally rises to the defend the corner and catches it to end that immediate threat, before he's tripped by Ruben Dias as he tries to play out quickly. Marcelino is preparing more subs too...
64'
Injury
64'
Injury
TROUBLE IN GOAL?
Junior has stayed down here and looks in a lot of pain - replays show he could've done with a cricket box to stop that shot as it hit him amidships. He should be able to continue though...
63'
63'
SUPERB FROM SAVINHO!
"He's destroyed one left-back in the first half and now he's destroying the new one!" exclaims Steve McManaman on commentary, and it's a fair assessment!
Savinho has Cardona all at sea as he drives inside and finds space to shoot, though Luiz Junior makes himself big to deflect it behind for a corner.
60'
60'
PETERING OUT
The contest is faltering here. Manchester City aren't comitting many players forwards when they do attack but Villarreal still can't get near them...
57'
Substitution
57'
Substitution
GONZALEZ WITHDRAWN
The Spaniard went off under his own steam but was limping heavily as he was replaced by four-time UEFA Champions League winner Mateo Kovacic.
Not a bad replacement!
55'
Injury
55'
Injury
TROUBLE FOR GONZALEZ?
He's clutching his left leg and Rodri's replacement is also struggling here. It'd be a surprise to see him continue...
53'
53'
CAREFUL SANTI
The full-back has had a successful assignment against Doku so far but picked up a silly card for dissent late in the half and after wrestling the winger down there, Mourino will need to be careful.