Defending champion Serena Williams will face Victoria Azarenka in a rematch of 2012's US Open final on Sunday after they swept through their semi-finals.
Belarusian Azarenka beat Italy's Flavia Pennetta 6-4 6-2 on Arthur Ashe Stadium in a match with 13 breaks of serve.
Williams, the 31-year-old world number one, then needed seven match points before sealing a convincing 6-0 6-3 win in the second semi-final.
The American has dropped just 16 games in six matches at this year's event.
"It was a good match," said Williams. "Li Na is such a great player. I got a little nervous but I was able to close it out, finally."
Li had been expected to provide some sort of a test for the four-time champion and actually topped the tournament aces chart heading into the match, but Williams set about dismantling her serve from the outset.
An early double fault did not help the unsettled Li, who saw the first set fly past in 29 minutes as Williams put her under huge pressure by returning 84% of her serves.
Li, 31, finally got on the scoreboard after almost 40 minutes, and when Williams dropped serve in the following game for only the second time in the tournament, the huge cheer suggested the American crowd appreciated just what the Chinese player was up against.
It was only a minor blip for Williams, however, and she took the next four games in a row to move one game from victory.
The final exchanges proved to be the best of the contest as Li battled desperately to stay alive in a 15-minute game, saving six match points.
Williams was now on edge, despite her commanding lead, and screamed "Come on!" several times in the following game, but converted her seventh chance with a first serve to reach her seventh US Open final.
"Today it doesn't matter who is the opponent," said Li. "The problem is myself. Even if today I was playing against maybe the player ranked 100, still the same problem."
Second seed Azarenka was a strong favourite in the first semi-final against a player making her Grand Slam semi-final debut at the age of 31, but Pennetta is a far better player than her ranking of 83 suggests as she makes her way back after wrist surgery.
Seven of the first nine games went against serve as an off-key Azarenka leaked errors, while Pennetta struggled desperately to defend her second serve.
It was the Belarusian who edged the opening set by managing to cling on when serving for it in a tight 10th game, but 18 unforced errors suggested she was far from at her best.
With the first set secured, Azarenka began to hit more freely and she took a 3-1 lead with a succession of magnificent forehands, rounded off with a thumping drive volley.
Pennetta cut the deficit with another break to trail 4-2 but once again could not defend her own, and despite a couple of flashing returns she could not prevent the world number two serving out the match.
"I'm happy I'm in the final," said Azarenka. "There are always things that can be better. I felt like the first set was a little bit tricky, the momentum wasn't there a little bit.
"Just one shot wasn't working and threw my rhythm a little bit off balance."
Pennetta admitted: "I didn't serve really well today, but she didn't either. I think there was a lot of wind in the court. It was moving the ball all the time. It was not easy to serve.
"But I think I didn't serve in the way I was serving before because she put me under a lot of pressure."
Earlier in the day, Azarenka's fellow Belarussian Max Mirnyi, with whom she won gold at London 2012, lifted his third US Open mixed doubles title.
The 36-year-old, partnered by Czech Andrea Hlavackova, beat American Abigail Spears and Mexican Santiago Gonzalez 7-6 (7-5) 6-3.