Manchester United och Manchester City rullade i gång seriefinalen på Old Trafford i kväll, ledda av José Mourinho och Pep Guardiola.
Första halvlek såg ut att sluta mållös, men så höll sig Citys David Silva framme och svepte in 1-0 från nära håll.
Knappt hade dock gästerna hunnit jubla förrän Vincent Kompany slarvade i försvaret och bollen damp ner framför Marcus Rashford.
Nilsson Lindelöf inbytt
Den unge anfallaren smällde in kvitteringen, två minuter in i tilläggstiden, och vevade med armarna för att få i gång United-fansen.
I paus byttes Victor Nilsson Lindelöf in och ersatte en skadad Marcos Rojo, medan Zlatan Ibrahimovic satt kvar på bänken.
Därifrån fick han se Romelu Lukakus misslyckade rensning bädda för 2-1, inprickat av vaksamme mittbacken Nicolas Otamendi.
Dubbelräddning av Ederson
I den 76:e minuten byttes Ibrahimovic in i Uniteds jakt på ny kvittering. Svensken var nyttig och vann mycket boll, men gästernas målvakt Ederson snodde rampljuset.
Efter ett inspel från vänster tryckte Lukaku i väg ett skott i ansiktet på brassen – som också tog returen från nyinbytte Juan Mata.
Dubbelräddningen blev avgörande. City red ur United-stormen och segern innebär ett försprång på elva poäng efter 16 omgångar.