Williams, playing in her first tournament since the US Open, had to be at her best to see off top seed Vinci 7-6 (7/2) 6-4 and set up a clash with Andrea Petkovic, who breezed past Ksenia Pervak 6-3 6-2.
The American served for the first set at 5-3 but was taken to a tie-breaker by her resilient opponent.
But Williams did not falter and raced into a 5-1 lead before clinching the opening set with a sublime backhand winner.
After two breaks of serve apiece, Williams finally broke for the decisive time in the ninth game to keep alive her chances of a first WTA Tour title in over two years.
Former world number five Daniela Hantuchova reached the last four courtesy of a 7-5 6-0 triumph over Spain's Lourdes Dominguez Lino. The Slovakian will next meet Monica Niculescu, who eased to a 6-0 6-4 victory over Lucie Hradecka.