Muchova räddade två setbollar i första set och vann med 7-6(7-5),2-6,6-4. Sabalenka som i år vunnit Grand Slam-turneringarna Australian Open och US Open hade inte förlorat sedan kvartsfinalen i Toronto i början av augusti.
Muchova passar Sabalenka illa och det här var tredje raka förlusten för den belarusiska världstvåan vars vinstsvit på 15 matcher var personrekord för henne.
49-rankade Muchova vann de sista tio poängen efter att ha vänt 2-4 i set. Muchova, vars främsta merit är finalplatsen i Franska öppna förra året, strödde lovord över Sabalenka innan hon kommenterade sin egen insats.
OS-mästaren väntar i semifinalen
– Jag tror att jag har blivit bättre också och kämpade för varje boll. På något sätt mådde jag ganska bra på banan. Naturligtvis behöver jag fortfarande jobba på min kondition – jag hade inte mycket tid att jobba på det i år, säger Muchova enligt WTA.
I semifinalen kommer Muchova att den kinesiske OS-mästaren Zhengi Qinwen som slog 17-åriga ryskan Mirra Andreeva med 5-7,6-0,6-4.
I den andra semin möts Coco Gauff och Paula Badosa.