The Malaysian lost the first game of his semi-final Saturday against Du Pengyu in the southern Chinese city, sending shots out and into the net in a tentative start.
He clawed his way back from an 11-5 deficit but China's Du, ranked third, found answers to Lee's returns and raised the roof of the Tianhe gymnasium when he took the first 22-20.
Lee, who has never won a world title, came out fighting in the second, leaping around the court, combining powerful smashes and delicate drop shots, with Du struggling to keep up.
While Du fought hard in the third, Lee went on to take it 21-15 setting up a showdown with arch rival Lin, who beat him at the previous World Championships and in the last two Olympic finals.
“I was not nervous, the problem was that Du Pengyu had prepared very well for the match, especially for the first game. Whatever I gave the shot, he could always return it,” said 30-year-old Lee, who will be the first Malaysian to take a world title if he wins on Sunday.
Lin widely regarded as badminton’s best ever player, took on seventh seed Nguyen Tien Minh of Vietnam in his semi-final.