US ninth seed Williams, seeking her third US Open crown, advanced to a Thursday matchup for a spot in Saturday's final against 83rd-ranked compatriot Sloane Stephens.
Stephens, who missed 11 months with a left foot injury before returning at Wimbledon, matched her best Grand Slam showing by outlasting Latvian 16th seed Anastasija Sevastova 6-3, 3-6, 7-6 (7/4).
Williams, who improved to 2-4 all-time against the Czech 13th seed, will return to the world top five for the first time since January 2011 after dominating the tie-break.
Williams, the oldest Slam semi-finalist since Martina Navratilova at Wimbledon in 1994, won the 2000 and 2001 US crowns.
More From This Section
She was runner-up this year at Wimbledon and the Australian Open and could reach three Slam finals in a year for the first time since 2002.
Kvitova battled back from a five-month absence after a knife-wielding home intruder injured her left hand last December.
Williams swatted a backhand winner to break for a 5-3 edge and held to take the first set but Kvitova led 3-0 when rain forced a closure of the Arthur Ashe Stadium roof.
If Americans Madison Keys and CoCo Vanderweghe win Wednesday, they will produce the first all-American US Open semi-finals since 1981.
"That would be huge," Williams said. "I'd love that."
"This is amazing," Stephens said. "I hope there are four Americans in the semi-finals."
Spanish 12th seed Pablo Carreno Busta, who has not dropped a set, cruised into his first Grand Slam semi-final by defeating Argentine 29th seed Diego Schartzman 6-4, 6-4, 6-2.
"Incredible," Carreno Busta said. "It's something that I always dreamed about but something I never thought was going to arrive here. It's a great feeling."
While legends Roger Federer and Rafael Nadal are each one win from their first US Open meeting in an epic semi-final, this side of the men's draw is guaranteed to produce a first- time Slam finalist.
"It would be fantastic to play him in the final," Carreno Busta said of Nadal. "But we have to play step by step."
"This is just incredible," Stephens said. "When I started my comeback at Wimbledon I could never have dreamed of coming back and having these results. It's indescribable."
- 'I'm not a robot. Sorry.' -
=============================
Sevastova, who matched her best major run from last year at New York by ousting Maria Sharapova to reach the last eight, led 3-1 in the third set before Stephens rallied.
"I just told myself to keep fighting and stay consistent," Stephens said. "I knew if I just stick with it and stayed in every point I'd have my opportunity and I did.
In the tie-breaker, Stephens took four of the last five points, three on Sevastova errors before hitting a down-the- line backhand winner ensured her win gto reach the top 35 in next week's rankings.
Sevastova admitted nerves got to her in the tie-breaker, saying, "It's normal. You play for semi-finals of US Open. I'm not a robot. Sorry."
Czech reigning number one Karolina Pliskova, last year's US Open runner-up, must reach the final or lose the top spot to already-ousted Garbine Muguruza, the reigning Wimbledon champion.