Manchester United have recorded their third victory against Manchester City this season - and a Premier League double over their local rivals for the first time in a decade - courtesy of a 2-0 derby triumph at Old Trafford this afternoon.
Two errors from City goalkeeper Ederson proved costly as he allowed Anthony Martial's first-half volley to sneak under his hand before a wayward throw gave Scott McTominay the chance to seal matters with virtually the last kick of the match.
The result sees Ole Gunnar Solskjaer's side move back up to fifth and close the gap on the top four to three points after Chelsea's win over Everton earlier in the day, while Man City remain 25 points behind runaway leaders Liverpool, who now need only two more wins to clinch the Premier League title.
Phil Foden came into the side having put in a man-of-the-match performance in the EFL Cup final last weekend, and the youngster created the first chance of the contest when he picked out Raheem Sterling, whose curling low effort was pushed away by David de Gea.
City struggled to create anything beyond that in the first half, though, and after dominating possession in the opening 20 minutes they soon saw their grip on the game loosen as United grew into proceedings.
The hosts' first sight of goal arrived on the counter-attack in a glimpse of their original gameplan, with Bruno Fernandes sliding the ball into the path of Daniel James, whose low strike was comfortable for Ederson to save.
United soon began to see more of the ball rather than simply relying on quick breaks, and Martial squandered a big chance to break the deadlock shortly before the half-hour mark when he escaped the attention of Fernandinho but then put his finish too close to Ederson, having ignored an unmarked Fernandes on the edge of the box.
The Frenchman quickly made up for that with the opening goal two minutes later, with a mixture of Fernandes ingenuity and a rare error from Ederson giving United the lead.
With City still feeling aggrieved at the award of a contentious free kick, Fernandes scooped the ball into the path of Martial, whose first-time volley squirmed under the hand of Ederson and crept over the line at the end of a five-minute spell which saw the hosts enjoy 83% possession.
United's control of the game continued for the remainder of the half and they almost doubled their lead with a second in as many minutes when Fernandes rose to meet a Brandon Williams cross, only to slightly overrun it and skew his header wide.
Having benefited from a controversial refereeing decision for their goal, the hosts were on the wrong end of another towards the end of the first half when both Mike Dean and the video assistant deemed that Fred had dived inside the area, with VAR upholding the on-field decision to show the Brazilian a yellow card despite replays suggesting that he was caught by Nicolas Otamendi.
There was more VAR-related controversy at the start of the second half when Aguero was flagged offside before going on to put the ball in the back of the net, with De Gea making no attempt to save it despite the whistle not going.
The replay showed that the margin was a matter of centimetres, but VAR ruled that Aguero's shoulder was indeed offside and seconds after play continued United almost doubled their lead at the other end.
Ederson allowed a back-pass to sneak under his foot and trickle towards goal, and it took a goal-saving last-gasp sliding challenge from the keeper to prevent Martial from tapping the ball into an empty net from all of two yards out.
Man City's pressure began to grow throughout the second half as United fell deeper and deeper, with Foden threatening from range on two occasions and Otamendi glancing a header just over from a corner.
As the visitors continued to knock on the door United's threat on the counter-attack grew too, and James should have done better with 20 minutes remaining when he skipped past Otamendi but then stung the palms of Ederson from a tight angle instead of picking out Fernandes in the middle.
For all of their possession, clear chances were difficult to come by for Man City and the best of the lot came 15 minutes from time when Riyad Mahrez flashed a low ball across the face of goal which Sterling - now without a goal in 20 meetings with United - could not turn home despite throwing himself at the delivery.
Gabriel Jesus kept the ball alive and drilled a follow-up effort towards goal moments later, but De Gea was down smartly to make a crucial stop.
It was De Gea who was in the spotlight for a mistake last week, but his opposite number was guilty of the costly errors this time around and United finally sealed the victory in the sixth minute of stoppage time when McTominay pounced on a wayward throw from Ederson.
The Brazilian was looking to launch one last quick attack when he bowled the ball out towards Benjamin Mendy, but his throw was inaccurate and McTominay latched on to it before firing home into an empty net from all of 35 yards out.
The goal sent Old Trafford into raptures as United extended their unbeaten run across all competitions to 10 games, recording their first home league win over their local rivals since April 2015.
Man City, meanwhile, slip closer towards relinquishing their Premier League title and Liverpool could even be crowned champions before playing again should Pep Guardiola's side lose their next two games.
MAN UTD (3-4-1-2): De Gea; Lindelof, Maguire, Shaw; Wan-Bissaka, Fred, Matic, Williams (Bailly 78'); Fernandes (Ighalo 88'); James, Martial (McTominay 78')
MAN CITY (4-3-3): Ederson; Cancelo, Fernandinho, Otamendi, Zinchenko (Mendy 77'); Bernardo (Mahrez 59'), Rodri, Gundogan; Foden, Aguero (Jesus 59'), Sterling