Williams is making her first appearance in a final of the end of season event
Venus Williams will play Vera Zvonareva in her first Tour Championships final after she beat world number one Jelena Jankovic 6-2 2-6 6-3 in Doha.
The American came through a close third set when she saved five breakpoints for a 4-2 lead and then took advantage of a timely net cord in the final game.
Earlier, Zvonareva beat fellow Russian Elena Dementieva 7-6 3-6 6-3.
The eighth seed came back from 4-1 down in the first, and a break in the eighth game of the third set up the win.
The match between Williams and Jankovic produced high-quality rallies as both players fought to get the upper hand.
Wimbledon champion Williams, who went unbeaten in her group matches, attacked from the start and broke Jankovic's serve twice on her way to taking the first set.
The Serb won a topsy-turvy second set to set up a decider but failed to take her chances, most notably in the sixth game, as Williams kept her nerve to win a compelling match.
"What got me through the match was just being consistent at the right times," said the 28-year-old.
I played a little more defensively than I usually do but it was worth it
"My game is about being aggressive and taking chances, but what I really needed to do today was put a lot more balls in play and be a little smarter.
"I played a little more defensively than I usually do, but it was worth it."
Jankovic admitted that being unable to convert her breakpoint chances in the third set was crucial.
"It was very frustrating for me because I had so many opportunities, so many breakpoints," she said.
"I didn't convert any in my favour which was the key of the match in that third set.
"Of course it's disappointing to lose, but overall, when I look at finishing as the number one player in the world, I can only be proud, and I can look at it in a positive way. I can go to vacation with a smile on my face."
Zvonareva, who went into the tournament as the lowest player at ninth in the world, had a perfect record en route to the semis having beaten Jankovic and Ana Ivanovic as well as Russian Svetlana Kuznetsova in the group stages.
But the 24-year-old's match with Olympic champion Dementieva was not one of her best as both players struggled with their form.
The first set was particularly disappointing, with breaks in eight of the 12 games and seven of the last nine points in the tie-break going against serve.
Fifth seed Dementieva served for the first set twice, at 5-4 and 6-5, and she held a set point in the tie-break at 7-6 before losing it 9-7.
Zvonareva dropped her serve with a double fault to fall 2-0 behind as Dementieva claimed the second set.
But the eighth seed came through the third set to seal her place in the prestigious final.
"The match was very, very tough," said Zvonareva. "I think you have to try to keep your concentration throughout the whole match.
"Yeah, I had some games not so good, but overall I was able to manage myself and my game pretty good.
"It's very exciting just to be here at the championships and now to play on the last day it's even more special."
But she will have to raise her game significantly against Williams, especially as she has not won a set in their last five encounters.