Serena Williams beat Romanian qualifier Simona Halep 6-3 6-0 to extend her winning run to 23 matches and secure her place in the Italian Open final.
The world number one will attempt to win her fourth consecutive title in Sunday's final in Rome.
The American will face Victoria Azarenka after the Belarusian third seed beat Italy's Sara Errani 6-0 7-5.
Williams, 31, will then turn her attention to the French Open, which gets under way in Paris on 26 May, reports the BBC.
She last won the Rome title in 2002, the year of her only French Open crown.
Last year in Paris, Williams lost in the opening round of a major for the first time, falling to 111th-ranked Virginie Razzano of France.
"I love the clay. I haven't had many wins at Roland Garros but I do love it. I love to slide," Williams said. "My goal is just to win a match there this year."
Williams, a 15-time Grand Slam champion, has twice before won 21 matches in a row, although they came in 2002 and 2003.
She achieved her career-best 22nd win in a row by beating Spain's Carla Suarez Navarro in Friday's quarter-finals.
Martina Navratilova established the longest women's winning streak in the Open era at 74 matches in 1984.
Halep was playing her first top-level semi-final and was bidding to become the first qualifier to reach the final in Rome.
She managed an early break of serve for a 2-1 lead in the first set but then won just one more game as Williams powered into the final.
Williams has beaten Azarenka 11 times out of 13 previous meetings but Azarenka defeated the American when the pair last met in Doha earlier this year.