Evans struggled to get a foothold in the match after losing his opening serve and Shapovalov progressed into the last four with a 6-3 6-3 victory.
Evans did have a break point in the eighth game that would have levelled the first set at 4-4.
But Shapovalov held Evans at bay and built on his first set success by taking a 3-0 lead in the second.
The Canadian sent down seven aces to Evans' none and will meet Borna Coric in the last four.
World number four Daniil Medvedev and Grigor Dimitrov will contest the other semi-final on Saturday.
Medvedev dispatched Jannik Sinner 6-4 6-2, while Dimitrov was a 6-3 4-6 6-4 winner over Marcos Giron.
Over at the Swiss Indoors event in Basel, Spain's Carlos Alcaraz made it through to the semi-finals
with a 7-5 7-6 (5) victory over countryman Pablo Carreno-Busta.
He will take on Felix Auger Aliassime after the Canadian advanced with a 6-2 6-3 victory over Alexander Bublik.
The second semi-final will see Spain's Roberto Bautista-Agut take on Holger Rune.