World number three Zverev claimed a spot in the semis behind already-qualified Medvedev, winning 6-2, 6-4 in just over an hour, and will face Djokovic on Saturday for a place in the final.
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.
"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 brakes 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.
Zverev's victory meant that Thursday evening's match between Medvedev and Sinner was a dead rubber, with the Italian alternate denied a chance to make it out of the Red Group before he took to the Pala Alpitour court.