Amidst a raucous Etihad backdrop, Rayan Cherki had fired City into a 16th minute lead after bamboozling the Gunners defence with a sublime piece of skill before drilling home a sweetly struck shot.
Within 30 seconds however Arsenal drew level through Kai Havertz after the Gunners striker harried an attempted Gianluigi Donnarumma clearance with the ball ricocheting into the net.
In what was an intense, high quality affair, Arsenal twice struck the post after the break through Eberechi Eze and Gabriel.
However, a relentless City, who had also struck the woodwork twice through Cherki and Haaland, were not to be denied.
And, as so often, it was Haaland who delivered, the striker firing home on 65 minutes to lift the roof off the Etihad and secure a huge three points to move us to within three of the Gunners - and with a precious game in hand.
The game in brief
Appropriately enough for a game of such magnitude there was a cacophony of noise at the Etihad right from the off as the Premier League’s top two slugged it out.
And it was City who stormed straight onto the attack with first David Raya almost being mugged by Erling Haaland after mis-controlling a pass.
Cherki then saw a fourth minute effort rebound back off the post after taking a crucial deflection off Gabriel, a subsequent VAR check ruling out handball.
City and Cherki were not to be denied long however with the French wizard producing his latest brand of Gallic genius to fire the hosts ahead on 16 minutes.
Receiving the ball just outside the Arsenal box, Cherki then slalomed his way past three Arsenal defenders before changing feet and superbly firing past Raya.
It was a goal of the very highest quality.
Incredibly however Arsenal struck straight back immediately to level through Kai Havertz.
The Arsenal striker intercepted as Gianluigi Donnarumma sought to kick clear a throw-in at his right post with the ball ricocheting into the empty City net just 30 seconds after our opener.
It was an intense, compelling and high-octane affair more than befitting the blue-ribbon occasion with Raya having to be alert to smother Marc Guéhi’s 33rd minute header.
The Blues came flying out of the traps again after the break with Erling Haaland smacking the outside of the post with a 49th minute snapshot.
At the other end Donnarumma then came to City’s rescue on the hour, producing a stunning save to deny Havertz from point blank range after the visitors had opened up a four on two advantage
There was another almighty scare a minute later as Eberechi Eze swivelled and struck a 20-yard effort that struck the foot of the post and rolled across the line.
The magnitude of that moment was the illustrated when Haaland struck to restore our advantage on 65 minutes.
Nico O’Reilly fed an inviting ball from the left edge of the box and though it evaded Rodri, Haaland made no mistake drilling home a priceless left footed shot.
It was a riveting contest and City breathed another sigh of relief on 72 minutes when Gabriel’s header was deflected off O’Reilly onto the post.
The tension and drama was encapsulated on 95 minutes when Havertz headed over substitute Leandro Trossard’s inviting cross when unmarked to the Etihad’s intense relief.
What a game - what a win!
Teams
CITY XI: Donnarumma, Nunes, Khusanov, Guéhi, O’Reilly, Rodrigo (Nico 88), Bernardo (C) Semenyo (Ake 95), Cherki (Foden 83), Doku (Savinho 86), Haaland
Subs: Trafford, Reijnders, Stones, Marmoush, Ait-Nouri.
ARSENAL XI: Raya, Mosquera (White 74), Saliba, Gabriel, Hincapie, Rice, Zubimendi (Gyokeres 83), Eze (Trossard 74), Odegaard, Madueke (Martinelli 45), Havertz
Subs: Kepa, Jesus, Norgaard, Lewis-Skelly, Dowman
Attendance: 52,523
Player of the match
There were a host of compelling candidates but Nico O’Reilly once again delivered when it really mattered.
Under the most intense pressure he produced a performance of the highest quality belying his tender years.
And he capped it all off by producing the assist that led to Erling’s winner.
Class act in every sense.
Stat zone
Victory not only fired a rocket boost to City’s title aspirations it also extended our superb home league record against the Gunners.
Today’s result means we are now unbeaten in our last 11 Premier League home games against Arsenal (W8 D3) since a 2-0 loss in January 2015 under Manuel Pellegrini.
I’d argue that this one was maybe the biggest of the lot!
Pep’s reaction
It was OK! Enjoy I don’t think is the right word. It gave us hope, that’s all. Enjoy the moment but don’t lose the focus now. We have four long weeks and I know what the message will be.
We impressed and the quality from the opponent, they are really good. They are extraordinary, otherwise you cannot be all season top of the Premier League.
We are there. Reality is they are top of the league. Goal difference? They are better. We have got hope to extend the chance to fight until the end.
Bernardo reaction
[The win is] Very big because it puts us in a position if we win our game in hand we’re on the same points. Two weeks ago this didn’t look very likely, this scenario. I’m happy we can be on the same points.
Erling was fantastic today fighting for every ball. It’s not easy against two tough centre-backs. Today he fought like an animal.
We were very good until we made the mistake and it changed the mood after the 30th minute.
Second half was tough because it looked like we were in control of the game but always felt they were very dangerous. two big chances in a row. These big games are like this.
Small details make the difference. But overall we played a good game. I’m really proud.
What it means
Victory means City have cut the gap at the top of the Premier League on Arsenal to just three points.
Crucially, Pep Guardiola’s side also have a game in hand.
With Arsenal’s goal difference currently one better than City’s, it means we have the opportunity to potentially go top of the table when we play Burnley in midweek if we were to secure a win by two goals or more.
What’s next
City are back in Premier League action on Wednesday when we make the short trip to Burnley.
Kick-off at Turf Moor is slated for 20.00 (UK).
News about Man City v Arsenal
Pep hails ‘legend’ Bernardo
Pep Guardiola says Bernardo’s performance against Arsenal was typical of his career at City. Read more
Haaland calls for focus after vital victory over Arsenal
Erling Haaland was overjoyed after City's 2-1 win over league leaders Arsenal but has urged the team to remain focused for the remainder of the campaign. Read more
City 2-1 Arsenal: Match stats and reaction
City 2-1 Arsenal: 20-minute highlights
CITY+ subscribers can enjoy 20-minute highlights from our vital Premier League win at home to Arsenal. Watch more
City 2-1 Arsenal: 8-minute highlights
Watch extended highlights from City’s huge Premier League victory at home to leaders Arsenal. Watch more
Bernardo elated after 'very big' win over Arsenal
Captain Bernardo Silva expressed his delight after City's crucial 2-1 Premier League victory over Arsenal, taking us within three points of the league leaders with a game in hand. Read more
City 2-1 Arsenal: Two-minute highlights
Enjoy bite-sized action from City’s crucial Premier League win at home to leaders Arsenal. Watch more
City v Arsenal: Full-match replay
CITY+ subscribers can now watch every minute of our 2025/26 home Premier League clash with Arsenal... Watch more
Pep provides update on Rodri in the wake of key Arsenal victory
Pep Guardiola says City will await the outcome of tests on a groin issue with Rodri in the wake of Sunday’s hard-fought 2-1 Premier League win over Arsenal. Watch more