Erling Haaland (L) had a rare quiet night as Manchester City were held by Inter Milan
Erling Haaland (L) had a rare quiet night as Manchester City were held by Inter Milan AFP

Manchester City made a sluggish start to their Champions League campaign as they drew 0-0 against Inter Milan on Wednesday, while Paris Saint-Germain needed a last-minute goal to beat tournament newcomers Girona.

Pep Guardiola's side have won all four of their Premier League games this season but failed to break down Italian champions Inter in a repeat of the 2023 final won by City.

City lost Kevin De Bruyne to injury at half-time and Phil Foden fired straight at Inter goalkeeper Yann Sommer with their best chance as Erling Haaland was kept quiet on a night he was chasing his 100th goal for the English club.

"It was a very intense game against a strong opponent. We knew what was coming, they are a top team as well and they are used to winning, so we were not going to have an easy job," City defender Ruben Dias told TNT Sports.

Henrikh Mkhitaryan could have won it for Inter when he blazed over 15 minutes from time, allowing City to extend their unbeaten run in the competition to 24 matches -- one off the record set by Manchester United between 2007 and 2009.

It is just the second time in 42 home Champions League games under Guardiola that City have failed to score.

"Our plan was to show that we're not scared to play here," said Inter midfielder Hakan Calhanoglu.

PSG looked as if they would also have to settle for a point against European debutants Girona, who are backed by the City Football Group and ran Real Madrid close for several months in Spain last season before coming third.

However, a goalkeeping blunder from Paulo Gazzaniga in the 90th minute resulted in Nuno Mendes' cross squirming through his grasp and handed the French champions victory.

"It was a difficult game, they're a team that plays well with the ball," Mendes told Canal Plus.

"I was surprised (by the goal). The goalkeeper was there and it got through."

Last season's runners-up Borussia Dortmund, beaten by Madrid in the final, had English winger Jamie Gittens to thank as the 20-year-old came off the bench and scored twice in a 3-0 win at Club Brugge.

Serhou Guirassy added a stoppage-time penalty for his first Dortmund goal since arriving in the summer from Stuttgart.

Celtic began in style by thrashing Slovan Bratislava 5-1 in Glasgow, winning their opening game in the Champions League for the first time in 13 attempts.

Liam Scales' powerful header put Celtic ahead and the hosts struck again through Kyogo Furuhashi early in the second half before Arne Engels converted a penalty for 3-0.

Kevin Wimmer pulled one back with a fine strike for the Slovak champions, who came through four rounds of qualifying, but Celtic pulled away with further goals from Daizen Maeda and Adam Idah.

"It's a fantastic night," Celtic captain Callum McGregor told TNT Sports.

"I hope the supporters enjoyed it because the managers and players did. This is the next level for the group in terms of growth and development."

Bologna drew 0-0 at home to Shakhtar Donetsk in the Italian team's first ever Champions League match. Lukasz Skorupski saved an early penalty from Shakhtar's Georgiy Sudakov.

Sparta Prague swept Red Bull Salzburg aside 3-0 with goals from Kaan Kairinen, Victor Olatunji and Qazim Laci, as the Czech champions won for the first time in the competition proper since 2003.

Jamie Gittens came off the bench and scored twice for Dortmund
Jamie Gittens came off the bench and scored twice for Dortmund AFP
Girona goalkeeper Paulo Gazzaniga (L) made a costly error in the final minute to gift PSG victory
Girona goalkeeper Paulo Gazzaniga (L) made a costly error in the final minute to gift PSG victory AFP