Paul Pogba sparked an unlikely comeback as Manchester United forced Manchester City to delay their title celebrations with a 3-2 victory in a remarkable derby.
City looked on course to wrap up the Premier League crown with a record six games to spare as they swept into a 2-0 half-time lead at the Etihad Stadium with goals from Vincent Kompany and Ilkay Gundogan.
Their advantage should have been greater as they wasted a hatful of other chances, with Raheem Sterling particularly guilty, in a first half that seemed embarrassingly one-sided.
But Pogba, the subject of much pre-match attention after City boss Pep Guardiola claimed he was offered the player, led a revival with two goals after the break before Chris Smalling snatched a winner.
There was controversy in the latter stages as Sergio Aguero was denied a penalty following an aggressive challenge from Ashley Young but United held on.
It seemingly remains only a matter of time before City, who are still 13 points clear, take the title but the manner of the loss was shattering coming soon after Wednesday’s Champions League defeat at Liverpool.
City initially fed on the raucous atmosphere as United’s attempts to play more openly than they did in their December derby loss played into their hands.
Young twice got the benefit of the doubt from referee Martin Atkinson after the ball struck his arm and and then after clash with Sterling.
Sterling repeatedly troubled the United defence and he played in David Silva, who fired over, and Bernardo Silva, who failed to get away a clean shot.
The opener came from a corner in the 25th minute as Kompany ignored the shirt-pulling of Smalling to reach Leroy Sane’s cross and power a header past David De Gea in trademark fashion.
The second followed quickly as Gundogan combined with Sterling and then brilliantly turned away from Nemanja Matic to poke a shot into the bottom corner.
Further chances came thick and fast as City found their groove. Sterling could easily have had a hat-trick before the break as he twice shot over after breaking clear and then hit another drive at De Gea. David Silva missed another opportunity and De Gea saved a Gundogan header.
Gundogan hit a post early in the second half but United, with the blue-haired Pogba coming to the fore after a dismal opening period, finally woke up.
Pogba first had a sighter as he forced Ederson to save low down. He then pounced from close range to reduce the arrears after Ander Herrera chested down an Alexis Sanchez cross.
That fired up Pogba, who moments later equalised as he raced on to another Sanchez cross to head past Ederson.
City tried to regain control but they allowed their concentration to slip as Sanchez delivered a free-kick into the area, Smalling got ahead of Kompany and volleyed past Ederson to put United ahead.
City quickly sent on Kevin De Bruyne and Aguero to retrieve the situation and the latter was aggrieved after going down as Young tackled fiercely in the area.
Tempers from both sides flared in the aftermath but United were to have their day with De Gea saving late on from Aguero and Sterling having another effort cleared off the line.