The champions roared back from last week’s disappointing home defeat to Manchester United to move within four points of second-placed Leicester City.
Arsenal were ripped to shreds in the first half as defeat leaves them in ninth place, seven points above the relegation zone and seven points away from the top four.
Arsenal started brightly with Brazilian teenager Gabriel Martinelli getting the better of Fernandinho to draw a good save out of compatriot Ederson in the opening 30 seconds.
But the champions went straight down the other end of the pitch to score the opener when Fernandinho drove out from the back and played Gabriel Jesus through. The Brazilian’s cut back was beautifully sidefooted into the roof of the net by Kevin de Bruyne in the second minute.
Pep Guardiola’s men wasted little time in doubling their lead through a brilliant team move that ended with De Bruyne squaring for Raheem Sterling to tap into an empty net after fifteen minutes.
The Arsenal fans started heading for the exit five minutes to halftime when De Bruyne weaved his magic once more to score City’s third with a wonderful finish. Phil Foden skipped past a couple of challenges and fed the Belgian, who went past Matteo Guendouzi and whipped the ball into the bottom corner with his left foot.
Only a brilliant Bernd Leno save that bounced off the woodwork denied De Bruyne a first half hattrick just three minutes later.
Leno once again came to Arsenal’s rescue in the 62nd minute when he blocked Jesus’ effort after his defenders had given the ball away.
City have the chance to get closer to Leicester City in second place when the two sides meet at the Etihad next week.