The teenage striker had been on the pitch for just 54 seconds when he pounced on a loose ball in the box to secure the winning goal and preserve the Blues’ 100% start.
It’s now 11 wins on the bounce for Manuel Pellegrini’s side who are also yet to concede a goal this season, though the loss of Sergio Aguero with injury took a little gloss off the victory.
As news filtered through of Chelsea’s latest set-back, City went into the game knowing victory against Palace could extend the points advantage of the current Premier League champions to 11 points with just five games gone - but standing in the way was a resurgent Crystal Palace side, fresh from a 2-1 win at Stamford Bridge before the international break.
City were without David Silva and Raheem Sterling, both with minor knocks while Kevin De Bruyne took his place alongside Nicolas Otamendi on the bench
With a full-house and both teams flying, it was always going to be a real test of the Blues’ mettle and the hosts, as expected, started with a high tempo, physical approach that will rattle more than a few cages this season
...Palace 0 City 1..
City weathered the first few minutes of pressure and Wilfried Bony saw a smart header saved and Samir Nasri went close with just six minutes played but Palace also went close though Bolasie and Souare – the latter seeing a 15-yard volley whistle past Joe Hart’s right-hand post.
Cabaye then attempted to wriggle past three challenges in the box before going down under the challenge of Fernandinho – and replays suggested he had clipped the Frenchman – but no penalty was given.
Aguero’s afternoon lasted just 24 minutes after he was scythed down by Scott Dann and though he tried to play on for a few minutes, he was forced to limp off in some discomfort and he was replaced by De Bruyne as the Blues switched back to the 4-2-3-1 formation that has served them so well this campaign.
With tempers frayed, Yaya Toure was booked for a rash challenge which resulted in a heated exchange between Alan Pardew and Manuel Pellegrini - though both shook hands a few minutes later.
The first-half petered out to a scrappy, error-ridden affair apart from a couple of half-chances for both sides – Bony spinning and firing a low drive and De Bruyne hit a powerful shot from distance – but both were comfortably held by the Palace keeper.
The Blues started the second period brightly and should have been ahead within five minutes as De Bruyne’s exquisite pass from the left set Jesus Navas through on goal and though the Spaniard did everything right as he raced clear and rounded the keeper, he somehow managed to put the ball wide of the empty net.
It was a bad miss to say the least but it remained to be seen whether it would prove costly or not
...Palace 0 City 1...
As the game wore on, so the chances for either side became fewer. Nasri and Toure flashed shots in from distance without troubling the keeper and Palace’s best effort was a Jason Puncheon header that produced a good save from Hart on 70 minutes.
Five minutes from Dwight Gayle guided the ball a yard wide from six yards from Zaha’s cross as Palace chased what would have been an undeserved winner on the balance of play in a game which looked for all the world as though it was heading for a goalless draw.
But there was one final twist still to come.
As Iheanacho replaced Bony, there was barely 90 seconds left of normal time – but that was enough for the 18-year-old Nigerian to pounce as Nasri’s low shot was spilled by keeper McCarthy in the six-yard box and Kelechi reacted quickest, firing into the net to secure a dramatic, last-gasp victory for the Blues. He could have had another, too, as Yaya Toure burst clear and played him in, but the pass lacked pace and the ball was scrambled clear.
It wasn’t pretty and it was perhaps the least impressive display of the campaign so far by City, but it was effective and gritty. Another three points banked, the Blues proved they can mix silk with steel when required.