At a glance
Harvey Barnes opens scoring
Ruben Dias equalises after Newcastle fail to clear
Barnes prods home winner
Harvey Barnes fired Newcastle United to a memorable victory against Manchester City in a rip-roaring Premier League contest.
Barnes, who also opened the scoring, prodded home from inside the box to secure all three points at a raucous St James' Park.
Ruben Dias earlier equalised for the visitors when his effort took a deflection off Fabian Schar after Newcastle failed to clear their lines from a corner.
But Newcastle showed their own powers of recovery to retake the lead a few minutes later.
Jacob Murphy swung the ball into the box and, although Bruno Guimaraes' header cannoned off the bar, Barnes was in the right place to hook the ball into the net.
There was a lengthy video assistant referee (VAR) check for offside, but the goal stood to send St James' into raptures once more.
It was just the response head coach Eddie Howe wanted as his side bounced back following a bruising 3-1 defeat at Brentford before the international break to claim a rare win against Pep Guardiola's team.
The hosts eventually found a way past towering City goalkeeper Gianluigi Donnarumma, who earlier made three big saves to deny Nick Woltemade.
City, however, will rue a missed opportunity after they had the chance to close the gap on league leaders Arsenal to a point.
Guardiola's side were not happy that Newcastle's winner stood and they were also furious in the first half after they had a huge penalty appeal waved away when Phil Foden went down under a challenge from Schar.
But, like Newcastle, they still had their chances to take control of the contest, with Erling Haaland denied after Nick Pope stood tall to block his first-time effort following Nico O'Reilly's pullback.
Haaland, whose wait to become the fastest player to 100 Premier League goals goes on a little longer, saw an attempted chip bounce harmlessly wide after Jeremy Doku played him through in the opening stages, while Foden failed to find the target from close range after exchanging a neat one-two with Rayan Cherki.
But this was to be Newcastle's evening as Howe secured his first Premier League win against City.
Howe finally beats Guardiola - how Newcastle stopped Man City
- Published22 November 2025
'We are used to it' - should Man City have been awarded a penalty?
- Published22 November 2025
Newcastle analysis: Barnes embodies resilience
Newcastle looked anything but resilient when they floundered at the Gtech Community Stadium this month.
But Howe stopped short of making sweeping changes and instead gave the bulk of these players the chance to make amends.
They certainly did that.
Newcastle looked more like their old energetic selves as captain Guimaraes celebrated winning tackles, the returning Lewis Hall and Tino Livramento raced up and down the flanks and Malick Thiaw stood up to Haaland.
However, in some ways, it was a forward who embodied the side's newfound resilience.
Barnes missed a couple of huge chances in the first half - even firing wide with the goal gaping after Jacob Murphy picked him out at the back post.
But he rallied after the break. Not only did Barnes open the scoring with a clinical finish from outside the area, but he stepped up again after City drew level.
Newcastle have been brittle this season, throwing away more points - nine - from winning positions than any other Premier League side, but this time they found a way to win thanks to Barnes' close-range finish.
No wonder Barnes was handed a standing ovation when he came off late on. No wonder supporters were singing "Barnes will tear you apart again" as they left the stadium at full-time.
This felt like a big result for Newcastle.
Newcastle 'close to our best' in win over Man City - Howe
Man City analysis: Haaland draws rare blank
This was a missed opportunity for City and a disappointing day for the usually prolific Haaland.
The loss means City are now third in the table. They failed to close the gap on leaders Arsenal, who have a north London derby against Tottenham on Sunday.
Haaland came into the game after helping Norway reach next year's World Cup during the international break, when he took his tally to 32 goals in only 20 games for club and country this season.
The 25-year-old remains stuck on 99 Premier League goals after some uncharacteristic misses, especially in the first half when Pope came rushing out of his goal and Haaland decided to take a shot instead of going round the keeper.
Another first-time effort from close range was straight at Pope, who plucked out a weak header in the second half as Haaland drew a blank for only the third time this season after failing to score against Tottenham and Aston Villa.
For Barnes' winner, the VAR Craig Pawson took almost five minutes to rubberstamp the goal.
Replays of the incident did not initially display lines drawn for a possible offside, although a screenshot later appeared to show Guimaraes was onside.
Guardiola disappointed to lose 'entertaining' game
What's next for these teams?
Newcastle travel to Marseille in the Champions League on Tuesday, when City resume their campaign against Bayer Leverkusen at Etihad Stadium.
Player of the match
After the opportunity to rate players has closed, the score displayed represents the average from all the submissions by BBC Sport users.