Ukrainian teenager Yastremska came into this event with a 1-6 record in WTA main-draw matches this season, but will now play her maiden final.
The 18-year-old, whose attacking style has paid off throughout the week, recovered from a break down in both sets to beat Zhang Shuai 7-5 6-4, striking 41 winners in the process.
"It's nice to be in the final, but it's sad because it's the last match here tomorrow [Sunday]," the youngster joked. "I want to repeat it all from the first match."
Yastremska appeared likely to face Muguruza, only for the Spaniard to falter alarmingly with the winning line in sight against Wang.
Muguruza was pegged back after winning an opening-set tie-break, but moved three games clear in the decider.
However, Wang, who had completed a 6-2 6-4 win over Elina Svitolina earlier in the day having resumed needing one game for victory, produced a stunning comeback to prevail 6-7 (5-7) 6-4 7-5.
Svitolina remains in the hunt for WTA Finals qualification despite her quarter-final exit.