Erling Haaland also struck in stoppage time to leave the title race perfectly poised ahead of City's trip to Liverpool next weekend. Marcus Rashford's wonderstrike had fired United into a shock lead at the Etihad.
Haaland was then guilty of a miss that will go down in Premier League folklore when he fired over with an open goal just before half-time. Foden ensured City did not slip up in the title race as he blasted into the top corner to level and produced a composed finish 10 minutes from time.
Haaland then rolled in his sixth goal in four Premier League derbies against United to atone for his earlier miss. An 11th league defeat of the season for United leaves Erik ten Hag's men 11 points adrift of the top four.
The boss was furious that City's equaliser was allowed as he claimed Rashford had been fouled seconds earlier.