Sergio Aguero gave City an eighth-minute lead at a blustery Old Trafford, but United hit back through Ashley Young, Marouane Fellaini, Juan Mata and Chris Smalling to register a sixth successive league win.
Aguero claimed another goal at the death -- his 100th in City's colours -- but it was too late to prevent United ending a sequence of four consecutive defeats against their neighbours.
The win gave United a four-point cushion over City in third place -- the last automatic Champions League qualifying spot -- and took them back to within a point of Arsenal ahead of next weekend's home game with leaders Chelsea.
City have now lost six of their last eight games in all competitions and manager Manuel Pellegrini is likely to face renewed questioning about his ability to revive the team he steered to the title a year ago.
It was a fourth successive away league defeat for City -- their worst run since 2006 -- and hammered another nail in their title defence, leaving them 12 points behind Chelsea having played a game more.
While they retain a five-point lead over fifth-place Southampton, Liverpool can close to within four points by beating Newcastle United on Monday.
On City's last visit to Old Trafford, a 3-0 win in March 2014, it had taken less than a minute for Edin Dzeko to put the visitors ahead, and they again attacked United with an intensity that took the hosts aback.
David de Gea had to save at his near post after Martin Demichelis's pass set Jesus Navas scampering through and with United appearing bewildered, it came as no surprise when City made the breakthrough.
James Milner's pass down the inside-left channel found David Silva, who squared for Aguero to tap in his sixth goal in seven league games against his team's cross-town foes.
Having revelled in City's recent misfortunes, United's fans were dismayed to see the script veer off in an unanticipated direction.
A back-pass to De Gea from Phil Jones in the 14th minute drew a barrage of boos from the home fans, but it was to prove the precursor to the equaliser.
The Spaniard's hoof downfield found its way, via Fellaini, to Ander Herrera on the left and his cross was turned in at the second attempt by Young, after Gael Clichy had made an initial block.
Young and Fellaini have been symbols of United's recent resurgence and they combined for the 27th-minute goal that put the hosts ahead.
Daley Blind reached the byline on the left and cut the ball back for Young, whose trademark in-swinging cross was nodded in at the far post by the unmistakeable frizzy-haired head of Fellaini.
It was a brilliant response from Van Gaal's men and City's frustration almost cost them dearly when captain Vincent Kompany flew in on Blind, for which he escaped with a booking.
Kompany had been a doubt for the game with a hamstring injury and he gave way at half-time, with Eliaquim Mangala coming on.
There was a swagger to United's play - Michael Carrick flummoxing Yaya Toure with a swish of the hips on the edge of his own box - and they continued to force City back.
Joe Hart parried a free-kick from England colleague Wayne Rooney and then saved from Carrick in the penalty-area stramash that ensued, but the home side would not be deterred.
They extended their lead mid-way through the second half, with Mata running onto Rooney's pass and tucking the ball between Hart's legs despite replays showing he had been offside.
Smalling meted out further punishment in the 73rd minute when he headed in a Young's free-kick and after Carrick had gone off injured, Aguero reduced the damage by bundling in a cross from Pablo Zabaleta. – AFP
Original source: United end derby jinx