Get all your news in one place.
100’s of premium titles.
One app.
Start reading
The Guardian - UK
The Guardian - UK
Sport
Niall McVeigh

Aston Villa 2-0 Bologna, Real Madrid 5-2 Dortmund: Champions League – live

Aston Villa's John McGinn celebrates scoring their side's first goal.
Aston Villa's John McGinn celebrates scoring their side's first goal. Photograph: David Davies/PA

Match reports

Some post-game thoughts from John McGinn, with Villa sitting top of the table.

“I had to bite my arm to keep from waking the kids when Stuttgart scored,” whispers Kari Tulinius. “That’s the first Champions League victory for Stuttgart in 15 years. And against Juventus! In Turin! That’s a heck of a way to return to the top table.”

While Nick Ames was at the Emirates for Arsenal’s win …

Here’s Ben Fisher’s verdict from a rocking Villa Park …

League One results: Barnsley 2-2 Charlton, Birmingham 2-0 Bolton, Bristol Rovers 1-0 Shrewsbury, Burton 2-3 Wycombe, Crawley 3-0 Lincoln, Exeter 1-2 Reading, Leyton Orient 1-0 Rotherham, Peterborough 5-1 Blackpool, Stevenage 0-2 Cambridge, Stockport 1-1 Northampton, Wigan 1-2 Mansfield, Wrexham 0-0 Huddersfield.

League Two results: Barrow 1-1 Notts County, Cheltenham 1-1 Bradford, Chesterfield 1-1 Colchester, Doncaster 0-1 Bromley, Fleetwood 0-1 Crewe, Gillingham 0-2 Newport, Harrogate 0-1 Port Vale, MK Dons 2-1 Accrington, Salford 2-1 Swindon, Tranmere 0-1 Grimsby, Walsall 3-1 Carlisle, Wimbledon 3-0 Morecambe.

Let’s catch up with tonight’s Football League results, starting with the Championship …

Cardiff 2-0 Portsmouth
Leeds 2-1 Watford
Oxford 1-1 Derby
Preston 2-2 Norwich
Sheffield Wed 0-0 Swansea
Stoke 2-2 Bristol City
QPR 1-1 Coventry

Full time: Girona 2-0 Slovan Bratislava

And finally … Girona get their first-ever Champions League win thanks to goals from defenders Miguel and Juanpe.

Full time: Sturm Graz 0-2 Sporting

Viktor Gyökeres’ solo run and finish caps another impressive European display for Sporting, who have seven points from three games.

Full time: Juventus 0-1 Stuttgart

Stuttgart seal a deserved win in stoppage time after seeing a first goal ruled out for VAR and a penalty saved. Juventus were distinctly second best.

Full time: Arsenal 1-0 Shakhtar Donetsk

The Gunners get it done despite Leandro Trossard’s missed penalty – and not a red card in sight.

Updated

Full time: PSG 1-1 PSV Eindhoven

No last-minute reprieve for PSG as Benitez makes a fine save and the ball is hooked off the line. PSV hold on for a point, and the final whistle is met by boos at Parc des Princes.

Full time: Real Madrid 5-2 Dortmund

Dortmund led 2-0 at half-time but were blown away by the hosts’ comeback, with Vinícius Júnior hitting a hat-trick as Real Madrid reminded everyone who’s in charge.

Full time: Aston Villa 2-0 Bologna

Aston Villa, they’re top of the league. Goals from McGinn and Durán steer the hosts through a tough battle, and they have three wins from three.

No penalty! Marco Asensio went down in a heap, and the referee pointed to the spot – but after looking at a replay, it’s overturned due to a lack of contact. Although there did appear to be some contact …

GOAL! Real Madrid 5-2 Dortmund (Vini Jr 94')

Ballon d’Or?! Vinícius completes his hat-trick in emphatic style, firing into the roof of the net. And in Paris … a penalty to the hosts …

Updated

GOAL! Juventus 0-1 Stuttgart (Touré 93')

El Bilal Touré has surely won it for Stuttgart! A lovely first touch, and he fires beyond Perin. That’s set to be the shock of the night …

“PSG v PSV is one of the most finely balanced matchups I can think of,” writes Peter Oh. “The Postscript Derby?” It might live up to the billing, if either team can find a winner in stoppage time.

GOAL! Real Madrid 4-2 Dortmund (Viní Jr 89')

Vinícius puts icing, cherry and a festive bow on the comeback, drilling the ball home after a surge upfield and dispensing with his shirt before piling into the home fans. Ballon d’Or, Ballon d’Or?

Missed penalty! It was awarded for a foul by Danilo, who is shown a second yellow card for his troubles. Millot steps up … but Perin gets low to his right and saves! Juve survive again – while in Girona, Stuani also sees his penalty saved and it stays 2-0 to the hosts.

GOAL! Real Madrid 3-2 Dortmund (Vázquez 86')

Honestly, the only surprise here is the goalscorer – it’s Lucas Vázquez, Real’s backup right-back, who smashes home from a tight angle. Comeback complete …

Penalty to Stuttgart! After a long VAR check – for what, I do not know – the referee heads to Monitor Town, and quickly awards the visitors a late penalty!

Kylian Mbappé shoots from a narrow angle, but he is denied by Kobel – then at the other end, Courtois saves from Brandt as Dortmund threaten to retake the lead.

Worth pointing out that if Villa see this out, they will have nine points – probably enough to qualify for the next round already. But Unai Emery will surely have an eye on securing a top-eight finish from here.

Arsenal penalty saved! Leandro Trossard has the chance to seal victory from the spot … but he’s denied by the Shakhtar keeper. Arsenal struggling to put this game to bed …

Updated

GOAL! Girona 2-0 Slovan Bratislava (Juanpe 73')

Centre-half Juanpe steps up for a free kick, and sends the ball spinning into the top corner via a deflection. Girona’s first Champions League win is in sight now.

Here’s the Durán goal. The striker was taken off for Ollie Watkins straight afterwards, and he wasn’t too happy with the decision.

With Dortmund pegged back in Madrid, Aston Villa are now top of the Champions League mega-table!

Pos Team P GD Pts
1 Aston Villa 3 6 9
2 Borussia Dortmund 3 9 7
3 Monaco 3 5 7
4 Sporting 3 4 7
5 Juventus 3 3 7

GOAL! Aston Villa 2-0 Bologna (Durán 63')

Speaking of quickfire doubles … Villa lead 2-0! Morgan Rogers curls in an excellent cross towards Jhon Durán, who gets an instinctive touch to flick the ball into the far corner.

Updated

GOAL! Real Madrid 2-2 Dortmund (Viní Jr 61')

That didn’t take long – Mbappé is played in on goal and while he’s denied a shot by a fine tackle, the ball rolls across goal for Vinícius to sweep into an empty net. Mbappé flagged offside, but VAR overturns as he was clearly onside when the pass was played.

GOAL! Real Madrid 1-2 Dortmund (Rüdiger 59')

Real Madrid have been going full-throttle since the second half began, and they pull one back as Mbappé’s cross is headed home by Antonio Rüdiger!

GOAL! PSG 1-1 PSV (Hakimi 55')

Achraf Hakimi drills a shot from 25 yards out which zips through Walter Benitez’s legs and into the net! Struggling to remember a keeper being nutmegged from that far out, but correct me if I’m wrong.

GOAL! Aston Villa 1-0 Bologna (McGinn 55')

John McGinn with a free kick in front of the Holte End … he swings it in with his left foot, and it clears everybody, bounces once, and nestles in the far corner! It’s checked by VAR for a brush off Ross Barkley’s arm, but the goal stands.

Updated

GOAL! Sturm Graz 0-2 Sporting (Gyökeres 54')

An outrageous solo effort from Viktor Gyökeres, who picks the ball up on the left flank, bustles inside beyond one marker, then keeps going sideways, past the keeper and another defender, before slotting into the bottom corner.

Updated

Leon Bailey goes close for Villa, turning his low shot just wide of the far post. That’s probably the closest the hosts have come in a tricky encounter so far.

A goal in Turin – and it’s Stuttgart who get it, Deniz Undav firing home at the near post via a deflection. But wait … it’s been disallowed for handball! It’s hard to tell, even on second or third viewing, which side of the “T-shirt line” the ball struck as Undav brought it down.

“Stuttgart played excellently against Real Madrid, but it felt all the time as if Los Blancos would do what they always do, i.e. enough to win,” writes Kari Tulinius. “But Juventus feel like they’re there for the taking. Mittelstadt and Leweling have had the freedom of the left side, while Undav and Millot look menacing. Juventus had a free-kick in a decentish position, but have otherwise looked overwhelmed. And they’re the home team!” I do hope you haven’t just jinxed it, Kari …

Champions League half-times

Arsenal 1-0 Shakhtar
Aston Villa 0-0 Bologna
Girona 1-0 Slovan Bratislava
Juventus 0-0 Stuttgart
PSG 0-1 PSV Eindhoven
Real Madrid 0-2 Dortmund
Sturm Graz 0-1 Sporting

Half time: Arsenal 1-0 Shakhtar Donetsk

All going according to plan for the Gunners so far – they lead at the break through an own goal.

Half time: Real Madrid 0-2 Dortmund

Most of said drama could be found at the Bernabéu, where the visitors struck twice in quick succession to leave Real Madrid at risk of a second-straight defeat.

Half time: Aston Villa 0-0 Bologna

There’s been more drama elsewhere, but Bologna have had the better chances in a goalless first half.

Half time: PSG 0-1 PSV Eindhoven

Lee Kang-in almost punishes some loose PSV defending, but Benitez gets down well to save his shot. And that’s half time. On a separate note, I like this PSV away kit – it looks like a Bury or Tranmere shirt from the mid-90s.

Updated

GOAL! Girona 1-0 Slovan Bratislava (Miguel 45')

A breakthrough for the debutants just before half time, with full-back Miguel Gutiérrez turning home Arnaut Danjuma’s cross.

League One half-times: Barnsley 1-0 Charlton, Birmingham 1-0 Bolton, Bristol Rovers 0-0 Shrewsbury, Burton 1-0 Wycombe, Crawley 0-0 Lincoln, Exeter 0-2 Reading, Leyton Orient 0-0 Rotherham, Peterborough 3-1 Blackpool, Stevenage 0-1 Cambridge, Stockport 0-0 Northampton, Wigan 0-1 Mansfield, Wrexham 0-0 Huddersfield.

League Two half-times: Barrow 1-0 Notts County, Cheltenham 1-1 Bradford, Chesterfield 0-1 Colchester, Doncaster 0-1 Bromley, Fleetwood 0-0 Crewe, Gillingham 0-2 Newport, Harrogate 0-0 Port Vale, MK Dons 1-0 Accrington, Salford 1-0 Swindon, Wimbledon 0-0 Morecambe.

The eternal champions do hit the woodwork twice in quick succession through Rodrygo and Jude Bellingham – but at the other end, Julian Brandt brings a flying save from Courtois to stop Dortmund making it 3-0.

GOAL! Real Madrid 0-2 Dortmund (Gittens 34')

Woof. Dortmund double their lead at the Bernabéu, with Malen sweeping the ball across goal for Jamie Gittens to smash home at the far post. Real Madrid in more than a spot of bother …

Updated

GOAL! PSG 0-1 PSV Eindhoven (Lang 36')

Another surprise scoreline, as Noa Lang drills the ball inside the near post, leaving Donnarumma on his heels!

Updated

Championship half-times: Cardiff 2-0 Portsmouth, Leeds 2-0 Watford, Oxford 1-0 Derby, Preston 2-1 Norwich, Sheffield Wed 0-0 Swansea, Stoke 2-0 Bristol City, QPR 0-1 Coventry (latest – 8pm kick-off).

GOAL! Arsenal 1-0 Shakhtar Donetsk (Riznyk og)

An unfortunate goalie-own-goal at the Emirates.

GOAL! Real Madrid 0-1 Dortmund (Malen 30')

Oh, hello. They couldn’t score against Real at Wembley, but Dortmund deservedly lead tonight. It’s Donyell Malen who scores, set up by a beautiful drag-back from Guirassy that takes out two Real Madrid defenders.

Updated

Stuttgart hit the post! As they did against Real Madrid, the German side are testing Juventus – and Enzo Millot sees his shot beat Perin but rebound off the near post and away. We’ve also been hearing that visiting fans are chanting in Italian – there’s a big Italian community in Stuttgart, apparently. The more you know.

If Pep Guardiola does move on at the end of the season, Sporting’s Rúben Amorim is a big contender to replace him at Manchester City – especially with Hugo Viana, Sporting’s director of football, heading to the Etihad. City have also been linked with Xabi Alonso – but I suppose it’s all moot if Pep wants to stick around.

GOAL! Sturm Graz 0-1 Sporting (Nuno Santos 24')

We have a goal! The first of the night, 24 minutes in – and it’s Nuno Santos for Sporting, hooking it in at the far post after a nice passing move (and a miss from hot-shot Viktor Gyokeres).

Updated

Another chance for Bologna, where Orsolini is very close to turning Dillinja’s cross in – although he’s penalised for (I think) a foul on Maatsen. At the other end, Orsolini is booked for a clumsy foul, and now Villa have a dangerous free kick, right on the edge of the area … Tielemans slips a sideways pass to Maatsen, whose cross is cleared for a corner.

PSG’s front three tonight is Ousmane Dembélé, Bradley Barcola and Lee Kang-in – a talented trio, but a long way from the MSN days. Lee comes close to opening the scoring, but his shot is well saved by Benitez, and moments later Dembélé rattles the bar from close range.

Aston Villa are trying to get something going in attack, with Bologna clearing away a couple of set pieces in quick succession. In Madrid, Vinicius fails to make enough contact with an acrobatic far-post effort.

A chance for the hosts in Paris, with Bradley Barcola firing a low effort wide of the far post. No goals in any of the seven 8pm kick-offs so far. Boo!

Bologna go closer here, with Thijs Dallinga pouncing on a through pass and testing Martínez from a tight angle. At the Bernabéu, the first sniff of a chance falls for Dortmund, with Guirassy unable to get any power on his header from Brandt’s cross.

An early half-chance for Bologna, with Kacper Urbanski sending his shot well wide from just outside the area.

A quick Championship update: Leeds have raced into a 2-0 lead at home to Watford, with Cardiff, Preston and Stoke leading Portsmouth, Norwich and Bristol City (respectively) by the same score. Elsewhere, Oxford lead Derby 1-0 in a battle between promoted sides.

And not forgetting North London …

We’re about to kick off in Birmingham – where Villa fans have just unfurled a spectacular lion-based tifo – plus Turin, Paris, Madrid, Girona and Graz. It’s on!

Updated

Full time in the early games: it finished Milan 3-1 Club Brugge, and Monaco 5-1 Red Star Belgrade. That means Monaco are top of the big Champions League table, although probably not for long.

Pos Team P GD Pts
1 Monaco 3 5 7
2 Borussia Dortmund 2 9 6
3 Brest 2 5 6
4 Benfica 2 5 6
5 Bayer Leverkusen 2 5 6

Updated

Back at San Siro, 16-year-old Francesco Camarda sends a header looping over the keeper, and is mobbed by his teammates, who lift him in the air. But wait, here comes VAR to spoil everyone’s fun – it’s chalked off for a marginal offside. It stays Milan 3-1 Club Brugge.

“Hei from Norway,” writes Brendan Large. “I can’t be the only one thinking this new format has lead to hell of a lot of drubbings. Maybe the big teams play each other a bit more often, but the goal tallies being racked up in some games are not what anyone wants surely?”

Very true – it’s perhaps been overlooked thanks to a couple of surprise results, but we’ve already seen Bayern win 9-2 and Dortmund smash poor Celtic 7-1. It could get ugly in January if goal difference is needed for any of the big boys to secure a top-eight spot.

Juventus v Stuttgart: team news

Juventus (4-3-3): Perin; Savona, Kalulu, Danilo (c), Cabal; Fagioli, McKennie, Douglas Luiz; Francisco Conceição, Vlahovic., Yildiz.
Subs: Pinsoglio, Daffara, Gatti, Locatelli, Adzic, Thuram, Weah, Cambiaso, Rouhi, Mbangula.

Stuttgart (4-2-3-1): Nübel; Vagnoman, Rouault, Chabot, Mittelstadt; Karazor (c), Stiller; Millot, Undav, Leweling; Demirovic.
Subs: Bredlow, Seimen, Al Dakhil, Keitel, Toure, Kratzig, Stenzel, Rieder, Chase, Jarzinho.

Reijnders strikes again, and Milan lead Club Brugge 3-1! A redemption arc almost complete for the midfielder, who was sent off against Udinese in Serie A this weekend. Now striker Francesco Camarda is coming on for his Champions League debut – he’s 16 years old, and becomes Milan’s youngest-ever player in the competition. And Monaco do now lead Red Star 4-1: it’s Minamino with his second goal, set up by Embolo.

There are also a stack of games in the Football League tonight – our main focus is on Europe but I’ll endeavour to keep you updated. The Championship fixtures are as follows: Cardiff v Portsmouth, Leeds v Watford, Oxford v Derby, Preston v Norwich, QPR v Coventry, Sheffield Wednesday v Swansea, Stoke v Bristol City.

Aston Villa v Bologna: teams in full

Aston Villa (4-2-3-1): Martínez; Konsa, Diego Carlos, Torres, Maatsen; Onana, Tielemans; Bailey, Rogers, McGinn (c); Durán.
Subs: Olsen, Cash, Mings, Barkley, Buendía, Watkins, Digne, Philogene-Bidace, Nedeljkovic, Bogarde, Ramsey, Kamara.

Bologna (4-3-3): Skorupski; Posch, Beukema (c), Lucumi, Lykogiannis; Fabbian, Freuler, Urbanski; Orsolini, Dallinga, Ndoye.
Subs: Bagnolini, Ravaglia, Holm, Moro, Castro, Iling-Junior, Casale, Corazza, Pobega, Odgaard, Miranda.

Don’t forget, you can follow Arsenal v Shakhtar with Scott Murray here:

And here’s an excellent and timely interview with Arsenal’s Ukrainian star, Oleksandr Zinchenko:

Milan had been pegged back by 10-man Club Brugge, and Daniel Fonseca’s decision to withdraw Rafael Leão was greeted with whistles. But the man who replaced him – Noah Okofor – immediately sets up Tijjani Reijnders to restore the hosts’ lead!

Nothing so dramatic happening in Monaco, where the hosts now lead 3-1. Wilfried Singo scored the third goal, with Breel Embolo then scoring his second – which was subsequently disallowed for handball.

PSG v PSV: team news

Paris Saint-Germain (4-3-3): Donnarumma; Hakimi, Marquinhos (c), Pacho, Nuno Mendes; Zaïre-Emery, João Neves, Fabián Ruiz; Dembélé, Lee, Barcola.
Subs: Safonov, Tenas, Asensio, Doué, Vitinha, Muani, Mayulu, Lucas Beraldo, Skriniar, Zague.
PSV Eindhoven (4-3-3): Benítez, Mauro Júnior, Flamingo, Boscagli, Dams; Til, Tillman, Saibari; Bakayoko, Luuk de Jong (c), Lang.
Subs: Drommel, Schiks, Obispo, Pepi, Driouech, Babadi, Land, Oppegard, Ledezma, Nagalo.

Here’s the Aston Villa team sheet – and Jhon Durán starts in place of Ollie Watkins. There are three other changes from the win at Fulham – Ian Maatsen and Ezri Konsa replace Lucas Digne and Matty Cash in defence, with John McGinn in for Jacob Ramsey in midfield.

Real Madrid v Borussia Dortmund: team news

Real Madrid (4-3-3): Courtois; Lucas Vázquez, Éder Militão, Rüdiger, Mendy; Valverde, Modric (c), Bellingham; Rodrygo, Mbappé, Vinícius Júnior.
Subs: Lunin, González, Camavinga, Tchouaméni, Arda Güler, Endrick,
Jesús Vallejo, Ceballos, Fran García.

Borussia Dortmund (4-2-3-1): Kobel; Ryerson, Süle, Schlotterbeck, Bensebaini; Sabitzer, Nmecha; Gittens, Brandt (c), Malen; Guirassy.
Subs: Meyer, Laurenz Lotka, Anton, Groß, Beier, Can, Campbell, Watjen, Mane, Kabar, Azhil.

Updated

Half time in the early kick-offs, each pitting a former European Cup winner against a previous finalist. At San Siro, it’s Milan 1-0 Club Brugge, Christian Pulisic scoring directly from a corner after Raphael Onyedika was sent off for the visitors.

Elsewhere, Monaco lead Crvena Zvezda/Red Star Belgrade 2-1, with Takumi Minamino and Breel Embolo on target for the hosts on either side of Cherif Ndiaye’s penalty for the Serbian side.

Preamble

The jury’s still out on the new Champions League format, but the last round of games did deliver drama and upsets, with two of Europe’s biggest beasts cut down to size. Aston Villa repeated their 1-0 European Cup final win over Bayern Munich, with Jhon “Duran” Durán bringing the 80s vibes back to Villa Park.

Unai Emery’s side have an opportunity to make it three wins from three at home to Bologna tonight. The Italians are back at Europe’s top table for the first time since 1965 – making Villa look like precocious upstarts in comparison – but have made a slow start to the season after their former manager, Thiago Motta, hightailed it to Juve this summer.

Elsewhere, Real Madrid need to shake off the indignity of a 1-0 defeat to Lille last time out, and will take on Dortmund in a rerun of last season’s Wembley finale. Will it end in similar fashion tonight, with the side currently top of the leviathan Champions League table carving out several chances before conceding late on? Probably.

In their post-Mbappé era, Paris Saint-Germain are still flying in Ligue 1 but have made an indifferent start in Europe, getting lucky against Girona before a meek surrender against Arsenal last time. Tonight, they host PSV in the PS Derby. The Dutch champions have won nine from nine in the Eredivisie this season, but continue to underwhelm in the Champions League.

And we still haven’t mentioned Arsenal v Shakhtar (which you can follow over here), Juventus seeking a third straight win against Stuttgart, Rúben Amorim’s Sporting swashbucklers taking on Sturm Graz, or, er, Girona v Slovan Bratislava. Yowza!

Updated

Sign up to read this article
Read news from 100’s of titles, curated specifically for you.
Already a member? Sign in here
Related Stories
Top stories on inkl right now
One subscription that gives you access to news from hundreds of sites
Already a member? Sign in here
Our Picks
Fourteen days free
Download the app
One app. One membership.
100+ trusted global sources.