BORUSSIA DORTMUND RATINGS: Marwin Hitz 7 - Had a tremendous game and kept City at bay until the penalty, for which he dived the right way but couldn’t stop Mahrez’s well-hit effort. Excellent distribution when under pressure. He made a great save to deny De Bruyne, but should have done better to keep out Foden’s goal at the near post. Reuters
Mateu Morey 5 – The full-back was a weak link and City tried to exploit him by overloading players on the left. Reuters
Manuel Akanji 6 – Had a good chance to double Dortmund’s lead soon after Bellingham’s goal, but his header didn’t trouble Ederson. At the other end, other than one mistake where he lost his footing, he stood his ground well. PA
Matts Hummels 7 – Looked confident on the ball with both feet and showed his experience on numerous occasions. He started plenty of moves with his incisive passing, and worked with Guerreiro to double team Mahrez at every opportunity. Headed the ball against the post in the second half. AFP
Raphael Guerreiro 6 – Got forward on the overlap several times on the left-hand side but rarely got the better of Walker. Reuters
Emre Can 5 – Gave away a penalty when he handled Phil Foden’s cross. He stooped low to try and clear but got his angles wrong. It was one of several mistakes in which he lost the ball, or his man. AFP
Mahmoud Dahoud 6 – Warmed Ederson’s gloves with a well-struck effort in the opening exchanges. He was involved in a fascinating tussle with Gundogan in which both players performed admirably. EPA
Jude Bellingham 7 – The 17-year-old was a man possessed. He scored his first Champions League goal and became the youngest Englishman to score in the competition. He showed quick feet to get the ball onto his right foot, and then stroked the ball into the top corner. He then saved a shot off the line, but fizzled out in the second half. PA
Marco Reus 6 – Saw a shot blocked by Kyle Walker as Dortmund went for a second goal. He later crossed for Hummels, who headed against the post.
Ansgar Knauff 4 – A disappointing evening, and there’ll be question marks as to why he wasn’t replaced sooner. There was little of the usual pace or aggression in the press. Getty
Erling Haaland 7 – Got the wrong side of John Stones in the build-up to the goal. Held the ball up well and brought others into play, but he was well marshalled by Stones and Dias overall. Reuters
SUBS: Giovanni Reyna (Knauff, 68) 5 – Was brought on to try and exploit the space that Haaland created with his runs, but to no avail.
Thorgen Hazard (Dahoud, 75) N/A – Should have been introduced earlier, but he came on just before the corner that led to City’s goal and he probably could have been tighter to prevent the shot.
Julian Brandt (Bellingham, 81) N/A – Probably would have been frustrated not to start, but he couldn’t influence the game with nine minutes left on the clock.
Steffen Tigges (Morey, 81) N/A – A late addition who didn’t see much of the ball. AFP
MANCHESTER CITY RATINGS: Ederson 6 – The Brazilian was at full stretch but couldn’t keep Bellingham’s effort out of goal. He was solid throughout, though, and his distribution as impressive as ever. PA
Kyle Walker 6 – Made a good block to deny Reus when Dortmund were on top, but didn’t offer City a great deal at either end. His pace is unquestionable, but he was one of the weak links. Getty
John Stones 7 – Got the wrong side of Haaland in the build-up to the Dortmund goal, but recovered well to keep Dortmund at bay for the rest of the game. Reuters
Ruben Dias 7 – Didn’t do enough to prevent Bellingham from finding the net, but otherwise did exceptionally well to keep the Norwegian quiet for much of the game. Made a key block shortly after Mahrez’s penalty. Getty
Oleksandr Zinchenko 7 – Delivered a couple of crosses from the left hand side and threatened with a long-range effort.
Rodri 7 – A very understated performance in which he was a steady influence in those moments of the game when Dortmund threatened.
Ilkay Gundogan 6 – The German was everywhere, harassing Dortmund all over the pitch and quick to break when he went on the attack.
Kevin De Bruyne 9 –City’s driving force and he came close to levelling when, after having won the ball back on the edge of the area, he struck an effort against Dortmund’s post. He came close again in the second half, but it was his overall work rate that marks him out as City’s standout player.
Riyadh Mahrez 7 – Came close to an equaliser when he emerged out of nowhere to get on the end of Foden’s hooked ball into the box, but his shot was blocked by Bellingham. However, he made sure later when he stepped up to convert from the penalty spot.
Phil Foden 8 – Scored City’s decisive second goal with a fierce shot from the edge of the area that was too much for Hitz at the near post. Earlier, he showed a great touch to bring the ball down before hooking it back to Mahrez for shoot.
Bernardo Silva 6 – Was quick to respond after De Bruyne hit the upright, but his header on the rebound didn’t trouble Hitz. He later supplied a short corner to Foden for the second goal. EPA
SUB: Raheem Sterling (Mahrez, 88) N/A – A late addition, Sterling looked a bit rusty. On one occasion, he ran into the area and was caught in two minds about what to do, before losing possession. EPA