Williams won 10 of the first 11 games before Wozniacki found a foothold in the match, but the American was too strong in the end.
In the semi-finals Williams will play third seed Agnieszka Radwanska, who defeated Germany's Angelique Kerber 7-6 (9/7) 6-4.
In a strange first set, Radwanska blew a 5-1 lead only for Kerber to spurn five set points in the tie-break.
The other last-four clash will pit eighth seed Jelena Jankovic against ninth seed Petra Kvitova, who both survived tough three-setters.
Kvitova is the queen of three-set matches and she was at it again, knocking out third seed and home favourite Li Na 4-6 6-2 6-4, while Jankovic defeated Lucie Safarova 6-7 (3/7) 6-4 6-4.