Hurkacz, seeded 26th, has won three in a row when facing a top-five opponent, but he beat Tsitsipas for only the second time in their eight meetings.
The upset further scrambled the draw. Novak Djokovic, Rafael Nadal and Roger Federer skipped the tournament, and No. 1-seeded Daniil Medvedev lost in the quarterfinals Wednesday night to No. 7 Robert Bautista Agut.
In the last quarterfinal Thursday night, unseeded American Sebastian Korda was to play No. 4 Andrey Rublev. Bautista Agut will face No. 21 Jannik Sinner in the first semifinal Friday, and a first-time ATP Masters 1000 champion will be crowned Sunday.
Hurkacz was serving at 0-2, 15-40 in the second set when he began his comeback. He steadied his baseline game, while Tsitsipas became increasingly erratic and frustrated as the match progressed.
Hurkacz hit 15 aces and saved 10 of the 13 break points he faced.