Manchester City took the derby-day honours with a win that puts a huge dent into United's slim title hopes.
Trevor Sinclair put City ahead with a neat turn and shot after Joey Barton's cross was not properly cleared, and a cool Darius Vassell finish made it 2-0.
United responded well but City's cause was helped when Cristiano Ronaldo was sent off for a wild lunge at Andy Cole.
Ruud van Nistelrooy pulled a goal back, but Robbie Fowler's clinical late strike wrapped up victory for City.
Under Sir Alex Ferguson, United had lost just three of their last 28 encounters with City - but this defeat was their third in four meetings on City's turf.
And with Ferguson's men already 13 points behind leaders Chelsea at the start of play on Saturday, another defeat was the last thing he needed.
City came into the game on the back of a dismal festive period while United had gone 11 games undefeated. But, as happens so often in derby fixtures, form went out of the window.
Both sides handed debuts to recent new signings, with Patrice Evra lining up at left-back for United and Albert Riera on the left of City's midfield.
Neither could make much of an impact in the opening half-hour, and there were few incidents of note.
If anything United enjoyed the upper hand in terms of possession in the early stages but were unable to turn that into chances - and paid the price when City burst into life on 32 minutes.
Gary Neville could only head Barton's cross as far as the edge of the area and, with United's defence static, Stephen Ireland nipped in and prodded the ball to Sinclair, who span before slamming his shot past Edwin van der Sar.
That stunned United but they almost managed an instant reply when Barton's error led to Wayne Rooney running clear only for David James to block his shot.
And instead City extended their lead on 39 minutes, with Sinclair again playing a prominent role.
His header was touched on by Cole and the ball ran through to Vassell, who had time to pick his spot and finish in clinical fashion.
United were still threatening - with Ronaldo twice going close with headers - but City reached half-time with their two-goal lead intact.
And the Blues' battling approach continued to pay dividends after the interval - restricting United to half chances while threatening on the break themselves.
It was only when Ronaldo was sent off on 66 minutes that United finally got going in the final third.
The Portuguese winger was angry after being tackled heavily by Stephen Jordan and took his revenge on Cole, throwing himself into a tackle that did not make contact but still brought him a red card.
Up until then United's best effort had been a shot from Wayne Rooney that skimmed James' near post - but the 10-men pulled a goal back soon after.
Ryan Giggs lifted a ball into the box and Van Nistelrooy held off Sun Jihai before swivelling and firing past James.
That should have been the cue for a Red onslaught in the final 15 minutes, but it never really materialised.
The game was wide open but City enjoyed just as many chances - and substitute Fowler made sure of the win in injury time when he smashed home a third.
Man City boss Stuart Pearce:
"We had taken one point out of the previous 12 and, to face United and put in a performance like that, I am really pleased for us.
"Our players were the ones who were up for a derby match, up for a real scrap.
"I've always had confidence in our players but can they stand up and say 'you're not rolling me over today'?"
Man Utd boss Sir Alex Ferguson:
"We've been in very good form but in fairness we didn't play well enough in the first half.
"We gave the ball away to them too much and our play in the last-third just wasn't good enough.
"The crosses into the box were easy to deal with and we should be doing much better than that."
Man City: James, Jihai, Dunne (Onuoha 69), Distin, Jordan, Sinclair, Barton, Ireland, Riera (Musampa 77), Cole (Fowler 77), Vassell.
Subs Not Used: Sibierski, Croft.
Booked: James, Fowler.
Goals: Sinclair 32, Vassell 39, Fowler 90.
Man Utd: Van der Sar, Neville, Ferdinand, Silvestre, Evra (Smith 45), Ronaldo, Fletcher (Saha 71), O'Shea (Richardson 86), Giggs, Rooney, van Nistelrooy.
Subs Not Used: Howard, Brown.
Sent Off: Ronaldo (66).
Goals: van Nistelrooy 76.
Ref: S Bennett (Kent).