PSV earned their first win of the league phase with a commanding performance. Early on, goalkeeper Walter Benítez kept them in the game, and 16 minutes in, Ryan Flamingo acrobatically volleyed in Malik Tillman's long throw. Tillman then extended the lead just after the half-hour mark with a skillful run down the left.
Girona's captain, Arnau Martínez, was sent off for a second yellow card soon after halftime, and PSV took full advantage. They controlled the remainder of the match and scored twice in six minutes towards the end, with Johan Bakayoko netting a solo goal and an own goal from Ladislav Krejčí sealing the victory.
Slovan Bratislava 1-4 GNK Dinamo
Sandro Kulenović's two goals powered Dinamo to their first away win by a margin of three or more goals in the competition's main phase. Although David Strelec had initially put Slovan ahead with a close-range goal, Dario Špikić quickly equalized with an impressive solo effort.
Shortly after, Petar Sučić glanced in a header from Marko Pjaca’s cross, putting Dinamo in control. Kulenović added another after halftime with a composed finish from Pjaca's pass and later curled in a goal from distance. Dinamo’s dominant performance saw Sučić and Ronaël Pierre-Gabriel hit the woodwork in the final moments, securing back-to-back victories.
Bologna 0-1 Monaco
Thilo Kehrer, Monaco's captain, scored late to secure his team’s third win in four league games. In the 86th minute, he converted a flick from Breel Embolo after Aleksandr Golovin's corner.
Monaco had the upper hand early on, with goalkeeper Łukasz Skorupski tipping Embolo's shot onto the post and making a superb save on Golovin's free-kick. Bologna, still searching for their first Champions League goal of the season, came closest through shots by Sam Beukema and Giovanni Fabbian.
Read Also| Viktor Gyokeres: Do you know he was sold by Brighton for only £1 m in 2021?
Borussia Dortmund 1-0 Sturm Graz
A late goal from Donyell Malen clinched a narrow victory for Dortmund over Sturm Graz. Dortmund dominated the game, with goalkeeper Kjell Scherpen denying shots from Pascal Gross and Maximilian Beier before halftime.
Scherpen also thwarted Nico Schlotterbeck's attempts, and Mika Biereth missed a header at the other end. Just when it seemed the game would end in a draw, Malen struck, handing Sturm another loss.
Celtic 3-1 Leipzig
Former Leipzig youth player Nicolas Kühn scored twice to lead Celtic to their second league win. Leipzig initially took the lead with Christoph Baumgartner’s header from Kevin Kampl’s corner, but Kühn leveled with a brilliant goal and then added another in first-half injury time, marking Celtic’s 350th goal in the competition.
Goalkeeper Kasper Schmeichel celebrated his 38th birthday by blocking Baumgartner’s attempt at a second goal before Reo Hatate scored from close range to keep Celtic’s perfect home record intact.
Liverpool 4-0 Bayer Leverkusen
Xabi Alonso’s return to Anfield ended in disappointment as Leverkusen suffered their first away loss in nearly 18 months, with Luis Díaz scoring his first hat-trick for Liverpool.
The second half saw all the action, as Díaz opened with a clever finish. Cody Gakpo headed in another two minutes later, and Díaz then scored off Mohamed Salah’s cross before completing his hat-trick after Darwin Núñez was denied.
LOSC Lille 1-1 Juventus
Lille and Juventus each moved to seven points from four games after drawing at Stade Pierre Mauroy. Jonathan David scored the opener in the 27th minute, converting Edon Zhegrova's fine pass.
Juventus equalized in the second half when Dušan Vlahović calmly netted a penalty after André was called for a foul on Francisco Conceição. Goalkeeper Lucas Chevalier’s reflex save prevented Vlahović from scoring earlier in the match.
Real Madrid 1-3 Milan
Milan claimed their first victory over Madrid in 15 years with an impressive showing at the Bernabéu. Malick Thiaw’s powerful header put Milan ahead, though Madrid equalized with a penalty by Vinícius Júnior.
Álvaro Morata restored Milan’s lead before halftime by capitalizing on a save from Andriy Lunin. In a swift counterattack, Rafael Leão set up Tijjani Reijnders, who scored to seal Milan’s historic win.
Sporting CP 4-1 Manchester City
Viktor Gyökeres’ hat-trick led Sporting to a comeback victory, handing Manchester City their first Champions League defeat in 27 games. Phil Foden had given City an early lead, but Gyökeres equalized with a header from Geovany Quenda’s cross.
Sporting then struck twice early in the second half, with Maximiliano Araújo finishing a team goal straight from kick-off, followed by Gyökeres converting a penalty. Although Erling Haaland hit the bar from another penalty, Gyökeres scored once more from the spot, capping off a memorable night for outgoing coach Rúben Amorim.
Read Also| Crvena Zvezda vs Barcelona UEFA Champions League 2024/25 Highlights | Lewandowski scores a brace as Barcelona thrash Crvena by 2-5 in a goal fest in Serbia
Wednesday night action
Shakhtar Donetsk 2-1 Young Boys
The home side clinched a crucial win at home. Kastriot Ineri opened up the scoring for Young Boys with a powerful right-footed shot from outside of the box. Zubkov leveled the game in the 31st minute and Sudakov netted a second goal right before halftime to give the home side the lead.
Shakhtar kept piling pressure to add more goals but Young Boys did a good job preventing them from doing so.
Club Brugge 1-0 Aston Villa
Aston Villa faced its first loss of the tournament, ending their hopes of a perfect record and a chance to go top of the table, due to a second-half penalty scored by Vanaken in the 52nd minute.
Club Brugge secured their second victory of the campaign and had opportunities to extend their lead, but Emi Martinez made crucial saves, and Ferran Jutgla’s attempt struck the woodwork in the first half, preventing a larger scoreline.