Man City 3-1 Man Utd: Cristiano Ronaldo was sent off as Manchester City beat Manchester United 3-1 in the 134th derby at Eastlands.
Trevor Sinclair and Darius Vassell netted in the space of seven first-half minutes with the visitors in defensive disarray.
And when Ronaldo saw red for a 66th-minute lunge it looked like the game was over.
Ruud van Nistelrooy fired home a superb goal 14 minutes from time to ensure a tense finale.
But then sub Robbie Fowler fired home in stoppage time to clinch the points for Stuart Pearce's side.
City broke the deadlock after a low-key opening with a Sinclair goal on 32 minutes. He fired low past Edwin van der Sar when Stephen Ireland poked the ball forward on the edge of the box.
And seven minutes later City were in dreamland when new boy Patrice Evra's header was taken on by Vassell, who slotted the ball easily into the corner of the net.
United were reduced to 10 men on 66 minutes when Ronaldo - who had just been the victim of a strong challenge - lunged at Andy Cole and was given a straight red by ref Steve Bennett.
Van Nistelrooy gave the 10 men of United hope 14 minutes from time, chesting down a pass from Ryan Giggs before turning and shooting low past James.
But the visitors couldn't find a second goal, and when Fowler fired a left-footer past van der Sar from a Vassell lay-off it clinched vistory for City.