Manchester City, Paris, Real Madrid, Inter and Sporting CP qualified for the UEFA Champions League last 16 on Wednesday.
Article top media content
Manchester City beat Paris in the pick of Wednesday night's UEFA Champions League games, though both sides are now through to the last 16. Inter, Real Madrid and Sporting CP also booked their spots in the knockout stage, leaving five berths still to be filled on Matchday 6.
UEFA.com rounds up all the action from the second set of Matchday 5 fixtures.
Click on any scoreline to look back at the action as it happened. Highlights are available from midnight local time.
Who are through to the last 16?
Manchester City (ENG)
Manchester United (ENG)
Real Madrid (ESP)
Sporting CP (POR)
A cool 76th-minute finish from substitute Gabriel Jesus ensured last season's finalists go through as Group A winners, with Paris qualifying as runners-up. After dominating the first half, City were caught out by a slick interchange involving the visitors' attacking trio of Lionel Messi, Neymar and Kylian Mbappé, culminating in the France striker firing his side ahead five minutes after the break on his 50th UEFA Champions League appearance.
Raheem Sterling prodded the hosts level, however, and Neymar put a golden chance to restore Paris's lead wide two minutes before Jesus's eventual winner.
Lacking several key players for their trip to Belgium, the visitors were nevertheless on top from the first whistle and had already gone close twice by the time Christopher Nkunku tapped in for his sixth goal of the group phase.
Emil Forsberg swiftly doubled the advantage from the penalty spot before André Silva's towering header made it three and Forsberg scored from distance with the final kick of the first period. Leipzig crowned their biggest European win, and one that takes them third in Group A, when Nkunku turned in in the final seconds.
Key stat: Forsberg is now Leipzig's outright top scorer in the Champions League with nine goals, one more than Nkunku, and with the club's former forward Timo Werner on seven.
7/12: Paris vs Club Brugge, Leipzig vs Man. City
Two superb second-half goals helped Liverpool make it five victories out of five in Group B. Porto had the better of the first-half openings, not least when Otávio sliced a gilt-edged opportunity wide.
Liverpool were sparked into life by a brilliant Thiago Alcántara strike soon after the interval. Mohamed Salah then added a fine solo effort as the Reds coasted to another win, though Porto's fate is still in their own hands thanks to Milan's defeat of Atlético in Madrid.
Milan remain in contention for a place in the last 16 after a goal three minutes from the end by Champions League debutant Messias Junior gave them their first win of this campaign.
The 30-year-old's header from a delightful Franck Kessié cross took the Rossoneri off the bottom of the group – with Atlético replacing them – and they are within a point of Porto with one game to go.
Sporting sealed their last-16 spot with a Pedro Gonçalves-inspired triumph over ten-man Dortmund. The visitors controlled possession but were made to pay for moments of lax defending, not least when Pedro Gonçalves was allowed to nip in to poke home the opener. The 23-year-old made it back-to-back Champions League doubles with a brilliant curler before half-time.
Dortmund’s own qualification hopes imploded with Emre Can’s late red card, before Pedro Porro nodded in the rebound from Gonçalves’s missed penalty. Donyell Malen’s added-time reply was only a consolation.
Substitute Sébastien Haller’s brace ensured Ajax came from behind to clinch top spot in Group C. The forward, introduced at half-time with the visitors trailing to Rachid Ghezzal’s 22nd-minute spot kick, took just nine minutes to pull his side level, converting Nicolás Tagliafico’s unselfish pass from close range.
The competition's joint-leading scorer this season bagged a second with 21 minutes left to keep Ajax's perfect record intact.
The Merengues weathered early pressure that must have raised fears of a repeat of September's shock home loss to the Moldovan champions, as they claimed their place in the last 16 with a game to spare.
David Alaba's deflected free-kick and a sweet strike from Toni Kroos opened up a 2-0 lead by the interval, and Karim Benzema added a third soon after the restart to cap an impressive performance by Carlo Ancelotti's men.
Inter advanced to the knockout stage for the first time in a decade thanks to two second-half goals from Edin Džeko.
The Nerazzurri were left frustrated after failing to reap reward from a dominant first half, but the pressure valve was released when Džeko finished expertly from the edge of the penalty area just after the hour. He headed in a second six minutes later to rubber-stamp the win.
From this season, teams that finish third in their Champions League groups will enter the UEFA Europa League knockout round play-offs, where they will face a Europa League group runner-up. The winners of those ties advance to the round of 16.