World number three Zverev claimed a spot in the semis behind already-qualified Daniil Medvedev in just over an hour and will face Djokovic on Saturday for a place in the final in Turin.
The 24-year-old hit 22 winners and made only eight unforced errors compared to 20 by Hurkacz, who had an uphill battle to win after a dreadful opening set.
Zverev's victory means that Thursday evening's match between Medvedev and local hope Jannik Sinner is now a dead rubber with the Italian alternate denied a chance to make it out of the Red Group.
"It wasn't easy mentally because I knew I had to win in order to go to the semi-finals... I'm happy to be through in straight sets," Zverev said.
Zverev looked set to qualify in short order after sweeping to the first set in just 26 minutes with a dominating display of tennis.
Seventh seed Hurkacz won just nine points in the opening set as Zverev charged to the first four games before serving out to take a quick lead.
However Hurkacz unloaded his powerful serve to put the breaks on his opponent, rattling off 10 aces in the second set to grab a foothold in the match until finally losing his serve in game nine to leave Zverev with his chance to strike.
He made no mistake by winning his serve and ensuring a clash with Djokovic at the weekend.