Pep Guardiola's side made it 12 successive league wins against the Gunners, seizing control of their destiny in the Premier League title race.
Belgian midfielder De Bruyne was the star of the show, scoring twice in a masterful performance that left Arsenal reeling.
City started the game on the front foot, with Haaland showing great strength to control a high ball and then send De Bruyne racing away into space with a neat pass.
The Belgian ran through before curling a skidding shot inside the post to give City the lead after just seven minutes.
City then bombarded Arsenal's goal, with De Bruyne, Haaland, and others all testing the Gunners' defense.
John Stones deservedly doubled City's lead with a header in first-half stoppage time, before De Bruyne struck again early in the second half to effectively end the game as a contest.
Arsenal did manage to grab a consolation goal through Rob Holding in the 86th minute, but it was too little too late for Mikel Arteta's side. City's Haaland also got on the scoresheet in stoppage time to take his tally for the season to an incredible 49 goals.
The win means City have now won their last seven league games, leaving them with 73 points to Arsenal's 75, but crucially they have played two fewer games than the Gunners.
Guardiola's side, who have trailed Arsenal for almost the entire season, will go top if they beat Fulham at the weekend.
Arsenal, on the other hand, began the game knowing that a win against City would put them back in charge of the Premier League title race.
However, they looked powerless to stop the home side and will now be left ruing a damaging April in which points were frittered away.
City, with their eyes firmly on a treble, will be delighted with the result and will now look to continue their incredible winning run as they seek to reclaim the Premier League title.