Erling Haaland looked to have earned all three points for City with a spectacular first-half brace, only for Eric Dier’s late penalty to ensure a share of the spoils.
Haaland actually opened the scoring with his very first touch, chipping the goalkeeper 14 minutes into an absorbing encounter.
Monaco responded almost immediately through an unstoppable Jordan Teze strike.
Haaland restored our lead moments before the break though, rising high to power a header into the bottom corner.
It appeared destined to end that way until Nico was adjudged to have used a high boot on Dier in the dying minutes.
Dier took the penalty himself, sending Gianluigi Donnarumma the wrong way and guaranteeing a draw.
Check out the highlights at the top of the page...