Lethal striker Haaland opened the scoring with a header from close range in a one-sided first half at the Etihad Stadium.
He was on target again from the penalty spot early after the restart and completed his hat-trick four minutes later following a terrible mistake from Wolves goalkeeper Jose Sa, taking his goal tally for the season to a staggering 31.
City boss Pep Guardiola had demanded more hunger from his side in their quest for more trophies and they responded, moving two points behind the Gunners ahead of their huge clash with Manchester United later on Monday (AEDT).
Wolves defended resolutely in the first half, but it seemed only a matter of time before they went behind and Haaland got the breakthrough by rising above Nathan Collins to head Kevin De Bruyne's cross beyond Sa in the 40th minute.
Collins was fortunate not to concede a penalty for a challenge on Jack Grealish, before the centre-back showed great anticipation to head away a rasping drive from the England midfielder that looked destined for the back of the net.
Wolves boss Julen Lopetegui made a triple substitution at half-time, bringing Pablo Sarabia on for his debut along with Matheus Cunha and Joao Moutinho.
Haaland gave City breathing space five minutes into the second half, sending Sa the wrong way from the spot after Ruben Neves upended Ilkay Gundogan.
The Norway goal machine had his treble soon after, Sa inexplicably passing straight to the excellent Riyad Mahrez, who unselfishly presented Haaland with a tap-in.
Haaland was then replaced by Julian Alvarez before Mahrez had a goal ruled out due to being marginally offside and Gundogan headed over from close range as City cruised to victory.