Gabriel Martinelli's late strike deflected in off Nathan Ake
A largely disappointing game was given a stunning finale four minutes from time just as both sides looked certain to have to settle for a point.
Making his return from a hamstring injury as a substitute, Martinelli's strike deflected in off Nathan Ake to earn Arsenal a first league win over City since December 2015.
It was a moment that sparked wild celebrations and put the Gunners level on points with north London rivals Tottenham at the top of the table.
The biggest talking point until the goal was how City's Mateo Kovacic somehow stayed on the pitch after late tackles on both Martin Odegaard and Declan Rice.
City had the better early opportunities when Rice cleared off the line from Josko Gvardiol before Ake scooped a shot over the bar from close range.
Arsenal keeper David Raya, who had an uncertain time, was twice almost caught in possession on his line by Julian Alvarez.
But it was the home side who were elated as Martinelli, introduced off the bench for the second half, made that vital contribution.
City previously had to go back to December 2018 to recall the taste of successive Premier League defeats, when they lost at home to Crystal Palace and away to Leicester City.
They dropped only three further points all season after that double jolt. Now they must recover again after losing in the league at Wolves and here at Arsenal, where they were way short of their best.
City, as usual, had plenty of possession, but they lacked their normal thrust and sharpness, with striker Haaland reduced to the role of a virtual spectator.
There was indiscipline, too, from Kovacic, who was fortunate to only be shown a yellow card for a poor challenge on Odegaard yet still followed it up almost immediately with another on Rice.
The indiscipline spilled over at the final whistle too as a clutch of City players including Haaland and Kyle Walker were involved in a heated exchange with a number of Arsenal's backroom staff.
Guardiola's side will be bitterly disappointed with these past two league results - but history shows City have the quality and character to return to their best swiftly.
City previously had to go back to December 2018 to recall the taste of successive Premier League defeats, when they lost at home to Crystal Palace and away to Leicester City.
They dropped only three further points all season after that double jolt. Now they must recover again after losing in the league at Wolves and here at Arsenal, where they were way short of their best.
City, as usual, had plenty of possession, but they lacked their normal thrust and sharpness, with striker Haaland reduced to the role of a virtual spectator.
There was indiscipline, too, from Kovacic, who was fortunate to only be shown a yellow card for a poor challenge on Odegaard yet still followed it up almost immediately with another on Rice.
The indiscipline spilled over at the final whistle too as a clutch of City players including Haaland and Kyle Walker were involved in a heated exchange with a number of Arsenal's backroom staff.
Guardiola's side will be bitterly disappointed with these past two league results - but history shows City have the quality and character to return to their best swiftly.
-- Courtesy of BBC Sport