Nishikori, the 24-year-old 10th seed, triumphed in 4 hours 15 minutes, his second marathon clash after needing 4 hours 19 minutes to get past Milos Raonic in the previous round.
Nishikori will face either world number one Novak Djokovic or Andy Murray, both former champions, on Saturday for a place in Monday's championship match.
Ichiya Kumagae was the last Japanese man to reach the semi-finals of the US Championships in 1918.
"I was tight at the start but my body was OK. I felt more confident after the first set," said the 24-year-old, who will be playing in his first Grand Slam semi-final having made the quarter-finals in Australia in 2012.
Also Read
"It feels amazing. I am playing well and I hope to play at 100 percent in the semi-finals."
Nishikori stands at 1-1 against Djokovic and trails Murray 3-0 having lost to the Briton in the quarter-finals in straight sets in Melbourne two years ago.
But he was transformed in the second set, forcing the Swiss to save three break points in the eighth game before levelling the quarter-final in the 12th when Wawrinka served up his fourth double fault of the afternoon.
In a gruelling third set, Nishikori stretched to a 5-2 lead but after squandering a set point in the ninth game, the tiebreak was required to separate them.