MANCHESTER CITY PLAYER RATINGS: Ederson 7 – Had little to do apart from a routine save from a curling Ozcan in the first half. The Brazilian’s distribution helped drive his side forward and catch Dortmund on the break. AP
Manuel Akanji 6 – Another solid performance for the new signing, against his former side, although he did lose sight of Bellingham in the build-up to the opening goal. AP
Nathan Ake 7 – A faultless display at the back by the Dutchman. AFP
John Stones 8 - Popped up in some dangerous areas outside the opposition box, and his strike from range beat Meyer to equalise with City’s first shot on target. EPA
Joao Cancelo 8 – Produced some quality deliveries into the box, including an outstanding assist with the outside of his foot for the second goal. PA
Rodri 5 – Overran by Bellingham in the middle of the park after the break and picked up a card after clattering into the teenager. Reuters
Kevin De Bruyne 7 – The Belgian was full of running and put in a serious shift for his side. Produced a superb ball to find Haaland after 66 minutes, but the Norwegian went wide from a tight angle. Getty
Ilkay Gundogan 6 – Worked hard in midfield but lacked the required creative quality in the final third and was replaced by Silva. PA
Riyad Mahrez 5 – The winger looked off the pace and could not make an impact on the game before being replaced by Alvarez after 58 minutes. Reuters
Jack Grealish 5 – Often wasteful in a disappointing performance. Could not make the most of the space out wide as his movement was too predictable, and every time the Englishman cut inside, the attempted shot was blocked. Substituted for Foden just before the hour mark. EPA
Erling Haaland 8 – Can be faulted alongside Akanji for losing Bellingham for the opening goal. The in-form striker hit the outside of the post at a tight angle with his first sight of goal. But on 84 minutes, the Norwegian produced a stunning acrobatic finish to complete the comeback against his former club. AP
SUBS: Julian Alvarez (Mahrez 58’) 6 – A lively cameo and tried to make things happen after coming on for Mahrez. EPA
Bernardo Silva (Gundogan 58’) 7 – A positive addition in the second half and added much-needed creativity after replacing Gundogan. Getty
Phil Foden (Grealish, 58) 7 – Wasted no time attacking the Dortmund box after his introduction. Provided a great ball to Haaland after 72 minutes, but Hummels intervened to deny the Englishman an assist. EPA
Kalvin Phillips (Haaland 90’) – N/R. Thrown on for the last few minutes as City saw out the game. Getty
BORUSSIA DORTMUND PLAYER RATINGS: Alexander Meyer 4 – Made a mess of City’s first shot on target, as he appeared to pull away from Stones’ long-range effort. The goalkeeper was then beaten at his near post by Haaland for the second goal. Reuters
Raphael Guerreiro 6 – Stood up well against Mahrez in the first half, but the full-back struggled to get forward. Getty
Mats Hummels 7 – Strong defensive display and made a crucial intervention to deny Haaland a tap-in after 72 minutes. PA
Niklas Sule 8 – A dogged performance at the back, and the German managed to keep Haaland quiet until the closing 10 minutes. Getty
Thomas Meunier 5 – Looked uncomfortable in the final half an hour following the introduction of a direct and energetic Foden. Getty
Salih Ozcan 7– Had a good game midfield and provided the best chance of the first half, as his curling shot was matched by Ederson after 18 minutes. AP
Emre Can 6 – Worked hard in the middle of the park. AP
Jude Bellingham 8 – A standout performer, providing several line-breaking passes before scoring the opening goal of the match. The 19-year-old was alert to Reus’ cross and nodded the ball past Ederson from close-range. AP
Marco Reus 8 – Looked dangerous on the counterattack and could have scored after the break. The German beat Akanji emphatically but could not wrap the ball into Ederson’s net from a difficult angle. Provided the assist for the first goal. EPA
Anthony Modeste 5 – An uneventful performance and the Frenchman was replaced by Schlotterbeck after 78 minutes. Getty
Giovanni Reyna 5 – Plenty of energy in the first half but struggled to impact the game and was replaced by Malen for the final 30 minutes. AFP
SUBS: Donyell Malen (Reyna 61’) 6 – Dealt well in his defensive duties after coming on for Reyna just after an hour had been played. Getty
Nico Schlotterbeck (Modeste, 78) – N/A. Replaced the ineffective Modeste but didn’t have much of an impact himself. Reuters
Youssoufa Moukoko (Ozcan 88’) – N/A. The exciting youngster and little time to impact the game. AP
Karim Adeyemi (Reus 88’) – N/A. PA
MANCHESTER CITY PLAYER RATINGS: Ederson 7 – Had little to do apart from a routine save from a curling Ozcan in the first half. The Brazilian’s distribution helped drive his side forward and catch Dortmund on the break. AP
Manuel Akanji 6 – Another solid performance for the new signing, against his former side, although he did lose sight of Bellingham in the build-up to the opening goal. AP
Nathan Ake 7 – A faultless display at the back by the Dutchman. AFP
John Stones 8 - Popped up in some dangerous areas outside the opposition box, and his strike from range beat Meyer to equalise with City’s first shot on target. EPA
Joao Cancelo 8 – Produced some quality deliveries into the box, including an outstanding assist with the outside of his foot for the second goal. PA
Rodri 5 – Overran by Bellingham in the middle of the park after the break and picked up a card after clattering into the teenager. Reuters
Kevin De Bruyne 7 – The Belgian was full of running and put in a serious shift for his side. Produced a superb ball to find Haaland after 66 minutes, but the Norwegian went wide from a tight angle. Getty
Ilkay Gundogan 6 – Worked hard in midfield but lacked the required creative quality in the final third and was replaced by Silva. PA
Riyad Mahrez 5 – The winger looked off the pace and could not make an impact on the game before being replaced by Alvarez after 58 minutes. Reuters
Jack Grealish 5 – Often wasteful in a disappointing performance. Could not make the most of the space out wide as his movement was too predictable, and every time the Englishman cut inside, the attempted shot was blocked. Substituted for Foden just before the hour mark. EPA
Erling Haaland 8 – Can be faulted alongside Akanji for losing Bellingham for the opening goal. The in-form striker hit the outside of the post at a tight angle with his first sight of goal. But on 84 minutes, the Norwegian produced a stunning acrobatic finish to complete the comeback against his former club. AP
SUBS: Julian Alvarez (Mahrez 58’) 6 – A lively cameo and tried to make things happen after coming on for Mahrez. EPA
Bernardo Silva (Gundogan 58’) 7 – A positive addition in the second half and added much-needed creativity after replacing Gundogan. Getty
Phil Foden (Grealish, 58) 7 – Wasted no time attacking the Dortmund box after his introduction. Provided a great ball to Haaland after 72 minutes, but Hummels intervened to deny the Englishman an assist. EPA
Kalvin Phillips (Haaland 90’) – N/R. Thrown on for the last few minutes as City saw out the game. Getty
BORUSSIA DORTMUND PLAYER RATINGS: Alexander Meyer 4 – Made a mess of City’s first shot on target, as he appeared to pull away from Stones’ long-range effort. The goalkeeper was then beaten at his near post by Haaland for the second goal. Reuters
Raphael Guerreiro 6 – Stood up well against Mahrez in the first half, but the full-back struggled to get forward. Getty
Mats Hummels 7 – Strong defensive display and made a crucial intervention to deny Haaland a tap-in after 72 minutes. PA
Niklas Sule 8 – A dogged performance at the back, and the German managed to keep Haaland quiet until the closing 10 minutes. Getty
Thomas Meunier 5 – Looked uncomfortable in the final half an hour following the introduction of a direct and energetic Foden. Getty
Salih Ozcan 7– Had a good game midfield and provided the best chance of the first half, as his curling shot was matched by Ederson after 18 minutes. AP
Emre Can 6 – Worked hard in the middle of the park. AP
Jude Bellingham 8 – A standout performer, providing several line-breaking passes before scoring the opening goal of the match. The 19-year-old was alert to Reus’ cross and nodded the ball past Ederson from close-range. AP
Marco Reus 8 – Looked dangerous on the counterattack and could have scored after the break. The German beat Akanji emphatically but could not wrap the ball into Ederson’s net from a difficult angle. Provided the assist for the first goal. EPA
Anthony Modeste 5 – An uneventful performance and the Frenchman was replaced by Schlotterbeck after 78 minutes. Getty
Giovanni Reyna 5 – Plenty of energy in the first half but struggled to impact the game and was replaced by Malen for the final 30 minutes. AFP
SUBS: Donyell Malen (Reyna 61’) 6 – Dealt well in his defensive duties after coming on for Reyna just after an hour had been played. Getty
Nico Schlotterbeck (Modeste, 78) – N/A. Replaced the ineffective Modeste but didn’t have much of an impact himself. Reuters
Youssoufa Moukoko (Ozcan 88’) – N/A. The exciting youngster and little time to impact the game. AP