Paris: Erling Haaland scored an acrobatic late winner against his old club as Manchester City beat Borussia Dortmund 2-1 in the Champions League on Wednesday, while there were hard-earned victories for Real Madrid and Paris Saint-Germain.
Meanwhile, Chelsea were held by Red Bull Salzburg in their first match under new head coach Graham Potter, as Rangers lost heavily again and Celtic drew with Shakhtar Donetsk.
In Manchester, Haaland took on the club he left in the close season for 60 million euros ($60m, £52m) after two-and -a-half prolific years in the Bundesliga.
Yet it looked like Dortmund might spring a surprise as they went ahead just before the hour mark at the Etihad Stadium when England midfielder Jude Bellingham headed in.
City's equaliser did not come until Kevin De Bruyne set up John Stones to smash in with 10 minutes left, and Haaland got the winner in the 84th minute with an outrageous finish from Joao Cancelo's magnificent cross.
Haaland now has 13 goals in nine games for City, who have two wins from two in Group G.
"In the end we showed what we are," Haaland told BT Sport. "Dortmund were really good today (but) three points is what matters."
City's next two games will be against FC Copenhagen, who drew 0-0 with Sevilla in Denmark.
In London, Potter took charge of Chelsea for the first time but had to settle for a 1-1 draw against Salzburg in Group E, with Raheem Sterling's opener early in the second half being cancelled out by Noah Okafor.
"It has not been easy for the boys, they have responded to us really well over the last few days and it's a point we will have to take and get better," Potter told BT Sport.
Earlier, group rivals AC Milan beat Dinamo Zagreb 3-1 at San Siro, with Olivier Giroud scoring a penalty before Alexis Saelemaekers and Tommaso Pobega added further goals either side of a Mislav Orsic strike for Dinamo.
Late goals for Madrid
Reigning European champions Madrid needed two late goals to beat RB Leipzig 2-0 at the Santiago Bernabeu and maintain their perfect start in Group F.
Federico Valverde opened the scoring 10 minutes from time after being set up by Vinicius Junior, and substitute Marco Asensio sealed the victory with a tremendous first-time finish in injury time.
Carlo Ancelotti's side are clear at the top of the section from Shakhtar, who rode their luck to claim a 1-1 draw with Celtic.
The Scottish champions went ahead early on when Reo Hatate's ball into the six-yard box went into the net off Artem Bondarenko.
But Shakhtar, playing European home games in Warsaw due to the war in Ukraine, equalized before the half-hour mark via an emphatic finish by Mykhailo Mudryk.
Celtic had chances to win the game, none better than a late strike by Giorgos Giakoumakis that flashed agonizingly wide.
"We'll get our rewards if we keep playing that kind of football and showing that kind of commitment," said Celtic manager Ange Postecoglou.
At least they have a point, in stark contrast to rivals Rangers who lost 3-0 at home to Napoli in Group A.
PSG come from behind
In a dramatic second half, Rangers had American defender James Sands sent off for conceding a penalty which Piotr Zielinski had saved, only for Matteo Politano to score the rebound.
However, the referee ordered a retake, and Allan McGregor saved from Zielinski again.
Yet Napoli won another penalty midway through the second half, and this time Politano scored from the spot, before Giacomo Raspadori and Tanguy Ndombele added further goals.
The game had been postponed by 24 hours due to policing issues related to the death of Queen Elizabeth II, and Rangers ignored a decision by UEFA to reject their request to play the British national anthem before kick-off.
Paris Saint-Germain came from behind to beat Maccabi Haifa 3-1 in Israel as their superstar front three all scored.
Suriname international Tjaronn Chery put the home side ahead only for Lionel Messi to equalize before the break.
Messi then set up Kylian Mbappe to make it 2-1 midway through the second half, and Neymar sealed a second win in as many Group H games for PSG.
Juventus suffered a second straight defeat, though, as they lost 2-1 at home to Benfica.
Arkadiusz Milik's opener for Juve was cancelled out by Joao Mario's penalty, before David Neres struck Benfica's winner.