Anthony Martial and Scott McTominay secured Manchester United a stunning third derby victory of the season as Ederson endured a dismal afternoon in the Manchester City goal.

There was skill, tension and no little controversy as these bitter rivals met in the top flight for the 150th time, with Pep Guardiola's men looking to gain bragging rights at a ground that has been so good to them recently.

But the City boss would lose his first Premier League match at Old Trafford as Ederson floundered, having failed to deal with Martial's superb volley before gifting McTominay the chance to add stoppage-time gloss as the Manchester derby ended 2-0.

United's first home league win in the Manchester derby since April 2015 was a welcome shot in the arm as they bid to qualify for the Champions League, although the result may hasten bitter rivals Liverpool's title triumph.

But the Old Trafford faithful will not care after the hosts held firm during a strong City start and went ahead through a stunning set-piece routine - from a free-kick City could not believe was given, following a challenge on Bruno Fernandes by Ilkay Gundogan - as Fernandes' delicate clipped ball over the back line was volleyed through Ederson's grasp by Martial.

United were soon aggrieved when Fred was shown a yellow card for diving in the box despite Nicolas Otamendi making contact.

The controversial lack of VAR intervention on that decision would have been even harder for the home team to swallow had Sergio Aguero's goal stood at the start of the second half given United had all but downed tools with the flag raised.

Ederson was counting his blessings moments later after denying Martial with a tackle, having uncharacteristically miscontrolled at the start of a second half that City dominated.

But the hosts held firm as the rain fell, with Ederson's poor throw returned with interest by McTominay at the death as United added to this season's league and Carabao Cup wins at the Etihad Stadium.