Manchester United stunned Manchester City with a devastating first-half display as they won 2-1 at the Etihad to leave the champions 14 points behind Liverpool.
United were as spectacular as City were shoddy in the first half, as the visitors raced into a 2-0 lead; Marcus Rashford's penalty, via VAR, put them ahead (23), before Anthony Martial squeezed a low strike off the post from 18 yards (29).
There was VAR controversy as City were denied a penalty after the ball hit Fred's arm from a Kyle Walker cross late in the first half, but they didn't halve the deficit until the 85th minute through sub Nicolas Otamendi's header from a corner.
City huffed and puffed late on, but their title challenge all but blew up in smoke as United held on.
- Manchester City 1-2 Manchester United - Player ratings
- Premier League Table | Fixtures | Top scorers
- Watch Sky Sports now from £18 a month
- How the teams lined up
The result means City must recover the largest points deficit in top-flight history if they are to retain their title, while United have won back-to-back games for the first time this season, and now sit just five points off the top four to lift the weight off Ole Gunnar Solskjaer's shoulders.
Manchester City: Ederson (5), Walker (7), Stones (5), Fernandinho (5), Angelino (4), Rodri (5), De Bruyne (7),D Silva (6), B Silva (5), Jesus (6), Sterling (6)
Subs: Otamendi (6), Mahrez (6), Gundogan (5)
Manchester United: De Gea (7), Wan-Bissaka (9), Lindelof (8), Maguire (8), Shaw (7), McTominay (7), Fred (8), Lingard (8), James (8), Martial (7), Rashford (9)
Subs: Pereira (6), Young (NA), Tuanzebe (NA)
Man of the match: Marcus Rashford
How United picked off City in their own backyard
In one of the most chaotic first-halves of Premier League football this season, United found themselves 2-0 up as City crumbled to an extent not seen since that infamous 3-2 defeat by United in April 2018.
That day City were champions elect, but now they find themselves 14 points behind Liverpool following their 3-0 win at Bournemouth earlier on Saturday.
- Manchester City looking into alleged racist gestures
- How to watch Premier League highlights
- Live football on Sky Sports this week
Solskjaer encouraged his United side to play a higher line at the Etihad, a tactic seldom used here, but it worked instantly as the visitors picked off the champions at will in their own backyard.
Daniel James, Jesse Lingard and Martial all forced smart saves out of Ederson with shots from in and around the edge of the box from quick breaks, before VAR intervened to hand United a penalty as Bernardo Silva clumsily ran into Rashford. The United forward slotted home to continue his rich vein of form, hitting 13 in his last 14 for club and country.
City were floored and struggled to get up; Rashford miscued a first-time shot wide in acres of space with just Ederson to beat, and then hit the bar with a deft curling effort from the edge, but it was 2-0 shortly after.
City couldn't live with United's front four as Martial played a slick give-and-go with James, before the Frenchman squeezed home a low, left-footed shot from 15 yards, in off Ederson's near post.
Gabriel Jesus should have halved the deficit, heading wide onside from Kevin De Bruyne's wicked cross, while City were denied a late first-half penalty as Fred handled from Kyle Walker's cross, but VAR controversially deemed it to be fair.
City probed early in the second half, but United defended valiantly and denied the hosts an early passage back into the game.
City made just one change from the win at Burnley as Stones came in for Otamendi, while Angelino kept his place at left-back in place of Mendy.
Martial returned for United, coming in for Greenwood, while Shaw started his first league game since returning from injury, replacing Young.
David De Gea produced an acrobatic stop from Rodri's fierce effort, before sub Otamendi rose high above Harry Maguire to halve the deficit from a Riyad Mahrez corner with five minutes remaining.
There was pinball in the box late on as City pushed, but United held on to leave with three vital points. The pressure had been on Solskjaer at the start of the week, but United's travelling fans sung their back catalogue of odes in support of the Norwegian, as he earned his first win over City as a manager or player.
For City, it felt like an important moment in time as the title they had on lockdown for two years slipped further from their grasp.
'A proper Manchester United performance'
Analysis from Roy Keane on Saturday Night Football:
"It was fantastic - a proper Manchester United performance. Lots of bravery and personality. They have been outstanding.
"I don't think beating Tottenham was a big deal at home, but that win today will give the players a lot of confidence as they have been criticised - nobody likes to be criticised. But hats off to Manchester United, whatever happens in January with the speculation, question marks over Ole, they were outstanding.
"This was a Manchester United performance. It wasn't all about how they counter-attacked, it was how they managed the game, got blocks in and showed personality. I really enjoyed watching them - it's what Manchester United is all about. But the key is to be consistent, week-in, week-out. Hopefully these young players will pick up on that."
What the managers said...
City boss Pep Guardiola: "We concede three or four counter-attacks in the first half. I'm more than happy for the performance we have done. We pushed them, create chances, and concede two or three, but in general I am delighted and happy with the performance we play. In 90 minutes you can't expect to control everything, so when you lose this ball. But with the approach and the way we play, I was delighted. But no regrets at all.
"We are a little bit more [open], sometimes it happens, but with these four players up front, it's normal, but in general we played a good game. I know who we are as a team. I'm delighted to work with these guys, in the second half we tried and tried, unfortunately we scored late and couldn't turn the result."
United boss Ole Gunnar Solskjaer: "We're playing against the best team in the world, for me, the best coach in the world, it's so hard to play against them. It's a Man United performance, in my mould. I love boys going forward when there's a chance for them. We're improving all of the time. The boys are getting experiences to remember.
"There's more hard times for the doubters out there, because we'll keep on working the way we're doing, and we keep on believing in what we're doing. It's just about getting results, and more and more people will see what we're trying to do."
- This is Pep Guardiola's worst points return after the first 16 matches of a top-flight season in his managerial career (32 pts).
- Guardiola has lost two home league games in a single season for only the third time in his managerial career (also 2014-15 with Bayern Munich and 2008/09 with Barcelona).
- Marcus Rashford has scored 13 goals in 21 appearances in all competitions this season - equalling his best goalscoring return for United in a single season (13 goals in 47 apps in 2018/19 and 13 goals in 52 apps in 2017/18).
City now go to Dinamo Zagreb in their final Champions League group stage match on Wednesday at 5.55pm, before going to Arsenal on Super Sunday at 4.30pm, live on Sky Sports Premier League.
United now host AZ Alkmaar in their final Europa League group stage match at 8pm on Thursday, before hosting Everton on Super Sunday at 2pm, live on Sky Sports Premier League.