Manchester United brought Manchester City's sequence of 21 successive victories in all competitions to a crashing halt with an impressive derby victory at Etihad Stadium.
Pep Guardiola's side still have what looks to be an unassailable 11-point lead at the top of the Premier League, but the manner in which United subdued a previously unstoppable City and enhanced their own top-four chances will be a huge confidence boost to manager Ole Gunnar Solskjaer and his players.
United, who have now gone 22 league away games unbeaten - including 14 wins - stunned City with a fast start and were ahead after a penalty was awarded inside the first 30 seconds when Gabriel Jesus fouled the impressive Antony Martial.
Bruno Fernandes scored from the spot despite City keeper Ederson getting a strong hand on the ball, then United fashioned the win with a mixture of solid defence and constant menace on the break.
Rodri almost equalised just after the break when his shot glanced off the angle of post and bar, but United effectively sealed the win - condemning City to their first loss since a 2-0 defeat at Tottenham on 21 November - when the outstanding Shaw, who had earlier missed a chance to double United's lead, led a counter-attack, exchanging passes with Marcus Rashford before beating Ederson with a low shot.
Solskjaer's team, who had not scored in their previous three games, moved back into second place a point ahead of Leicester City in the increasing tight fight for a place in the top four.