The fourth-seeded Kenin was broken when serving for the match at 5-4. She broke back and then saved a break point before converting her first match point when the seventh-seeded Kvitova’s shot landed out.
Kenin has won a tour-leading 16 matches at majors this year. She started it by winning at Melbourne Park in Australia and then reached the fourth round at the U.S. Open last month.
It is the third straight year an American player has reached two Grand Slam finals after Serena Williams in 2018 and ’19.
Kenin will face Polish teenager Iga Swiatek.
The unseeded 19-year-old Swiatek beat Argentine qualifier Nadia Podoroska 6-2, 6-1 to become the lowest-ranked women’s finalist at Roland Garros since the WTA computer rankings began in 1975.