Celtic’s late 2-0 defeat to Lazio in the UEFA Champions League saw them knocked out of Europe, while Barcelona sealed their place in the last 16 of the tournament after fighting back to beat Porto 2-1.
Celtic started bottom of Group E with a single point, while Lazio were second on seven ahead of Atletico Madrid’s tie with Feyenoord.
The Scottish champions needed to win to stay in contention of qualifying for either the Champions League knockout stages or the remainder of the UEFA Europa League.
Luis Alberto had an excellent early chance to put the home side ahead, but he headed his cross at the back post into the ground and wide, but Brendan Rodgers’ men were largely secure in defence.
However, while Celtic looked like they had done enough to earn a point, two strikes in three minutes saw their hopes dashed as Ciro Immobile scored in the 82nd and 85th minute.
Victory means Lazio have also secured their places in the knockout stages after Feyenoord lost 3-1 to Atletico Madrid.
Barcelona earn huge win over Porto
Meanwhile, Joao Cancelo and Joao Felix were on target as Barcelona secured a huge victory over Porto in Group H.
The Catalan giants and Porto both had three wins and a defeat from the first four matches, both needed a win in order to help nail down their chances of progressing to the next round.
There looked to be a surprise on the cards when Pepe – Porto’s Brazilian winger – put the away side ahead after half an hour.
However, Joao Cancelo scored just two minutes later in response, cutting in from the left to drill a fine shot into the far corner.
Joao Felix notched a rare goal for this season as he put the Catalans ahead on 57 minutes.
Barcelona lead Group H on 12 points, three ahead of second-placed Porto.
Shakhtar inflict another defeat on Antwerp
Elsewhere in the group, Shakhtar Donetsk defeated Antwerp 1-0.
Because of the war in Ukraine, Shakhtar were playing host at Volksparkstadion in Hamburg, Germany.
Antwerp, meanwhile, had four defeats from their opening four matches, so were largely playing for their own sense of honour.
Mykola Matviyenko gave the home side the lead after just 12 minutes, which proved to be the only goal of the game. The visitors had Arbnor Muja sent off in stoppage-time.
Shakhtar are now level on points with Porto and the teams will meet in Portugal on December 13 for a place in the latter stages of the competition.
Hermoso stunner helps Atletico overcome Feyenoord
Atletico travelled to Feyenoord with the pressure on to stay in touch with Lazio in Group E, with Diego Simeone’s men on eight points, and Feyenoord on six.
They went ahead when the home side’s Lutsharel Geertruda scored an own goal on 14 minutes, and Mario Hermoso made it two just before the hour mark.
The Dutch side pulled one back through Mats Wieffer, but a Santiago Gimenez own goal re-established a 2-0 lead to leave Atletico back on top of the group by one points.
Dortmund too strong for Milan
In Group F, Borussia Dortmund went a goal up at AC Milan early on, with all four clubs in the group in with a chance of qualifying for the next round.
Dortmund topped the group before kick-off, and an early penalty from veteran forward Marco Reus put them one up after 10 minutes.
Milan were bottom and looking for their second win of the group stage, and they fought back to level on 37 minutes through Samuel Chukwueze, as the Nigerian international scored an excellent solo effort from the right wing.
In the second half, English youngster Jamie Bynoe-Gittens scored on 59 minutes, for the 19-year-old winger’s first goal of the season, and his first ever European goal. Then, Karim Adeyemi added a third 10 minutes later to take the game away from Stefano Pioli’s side.
Late, controversial penalty denies Newcastle win in Paris
PSG were looking for revenge against Newcastle after their drubbing in the first fixture between the two sides, but Alexander Isak, in form after returning from injury, scored on 24 minutes for Eddie Howe’s men.
While another defeat started to look certain, a penalty eight minutes into stoppage-time from Mbappe after what looked to be a harsh handball decision, rescued a point for Luis Enrique’s side.
PSG now sit second in Group F with seven points, with Newcastle (third) and Milan (fourth) tied on five points as Dortmund top the table on 10.
Young Boys secure win over Crvena Zvezda
In Group G, Swiss outfit Young Boys went ahead with an early strike when Kosta Nedeljkovic put through his own net after eight minutes against Crvena zvezda.
The home side dominated possession as they and their Serbian opponents contested the chance to grab the Europa League spot for next year, and Young Boys cemented their position when Lewin Blum made it two just before the half-hour mark.
City fight back to beat RB Leipzig
City looks set to suffer an upset as Lois Openda’s first-half brace had them on the back foot as the two sides looked to tussle for the top spot of Group G.
Pep Guardiola’s men were well off the pace in the first half but Erling Haaland and then Phil Foden scored to bring them back to parity, before Julian Alvarez notched a late winner.
The Citizens remain perfect in the group with five wins from five, while RB Leipzig sit in second and are guaranteed of their place in the last 16.