Manchester City must wait to secure the Premier League title after Manchester United mounted a remarkable second-half derby fightback to come from two goals down to win at Etihad Stadium.
City needed victory to be confirmed as champions but Paul Pogba scored two goals in two minutes to overturn City's first-half lead before Chris Smalling's volley completed the dramatic turnaround.
Pep Guardiola's side had delivered a first-half masterclass with captain Vincent Kompany scoring with a thumping header after 25 minutes and Ilkay Gudogan adding a second five minutes later after a clever turn and finish.
Outclassed United remained in contention after Raheem Sterling skied two golden chances over the bar with the goal at his mercy and Gundogan headed straight at keeper David de Gea when unmarked eight yards out.
It gave United hope and how Jose Mourinho's team responded as Pogba - out of sorts at Old Trafford recently and at the centre of claims by Guardiola before the game that he had been offered to City in January - stole in to pull a goal back after 53 minutes and head the equaliser two minutes later.
The remarkable turnaround was complete when Smalling, badly at fault for Kompany's goal, arrived unmarked to steer Alexis Sanchez's free-kick past the exposed Ederson in the 69th minute.
In a furious finale, players from both sides clashed and Ashley Young was fortunate that his wild lunge on City substitute Sergio Aguero in the area was ignored by referee Martin Atkinson.
De Gea made a world-class one-handed save from Aguero as City attacked furiously - but United held out and Guardiola's title party must wait for another day.
City will win the title next weekend if they beat Tottenham at Wembley on the Saturday (19:45 BST kick-off) and United lose at home to bottom club West Brom on Sunday (16:00).