The 25-year-old will face world number 14 Dane Caroline Wozniacki, who overcame Czech second seed Karolina Pliskova 5-7 6-1 6-1.
Konta said: “Caroline’s one of the best athletes on tour, so I know I am going to be running for a lot of balls.
“I’m looking forward to it, it is going to be a battle and I will try my best.”
Konta broke Williams twice in the first set as she moved into a 3-0 lead, before the 36-year-old American salvaged one of those breaks.
Williams struggled with her first serve and saved five break points early in the second set before breaking Konta to take a 3-1 lead.
But the British number one battled back to break Williams on three occasions on her way to sealing victory shortly after midnight local time.
Konta will reach a career-high world number seven ranking if she lifts the trophy on Saturday.
Posted by Juliet Ekwebelam (NAN)