Federer, who won his 18th Grand Slam title at the Australian Open, subdued American Jack Sock with out facing a break-point 6-1, 7-6 (7/4) to earn a crack at a record-equalling fifth Indian Wells title.
US Open champion Wawrinka, past the quarter-finals in the California desert for the first time, knocked out Spain's Pablo Carreno Busta 6-3, 6-2.
Ninth seed Federer ripped through the first set against 17th seed Sock in barely 20 minutes, before the American regrouped to make the second set more competitive.
Federer went into his clash with Sock well-rested after ailing Aussie Nick Kyrgios pulled out of their highly anticipated quarter-final.
Federer, who had trounced old foe Rafael Nadal 6-2, 6-3 in the fourth round, picked up right where he left off as he raced through the first set in 21 minutes.
But Sock, winner of two titles already this year at Auckland and Delray Beach, raised his game in the second set, saving a break point in the seventh game as it went on serve to the tiebreaker.
The American energized US fans on Stadium Court when he zinged a backhand winner past Federer for a 3-1 lead in the decider.
But Federer won six of the next seven points, including the last three, as he sealed the contest on his first opportunity.
"I think I definitely played great in the first set, came out and really saw the ball well," Federer said.
"I think Jack didn't have his best first set, but I found a way to take advantage of that quickly, hardly made any mistakes and was able to press.
"The second set was more like what I expected the first set to be. It was hard to break and return well off Jack's heavy serve. I maybe dropped my level just a bit, as well, as he lifted his.
"I had to rely a lot on my second serve. I'm happy it was there. Things got a bit more complicated, but it was definitely a good feeling to get through in two sets."
Sock said he had little to regret in the loss to the player he considers the greatest of all time.
"I didn't play my service games really the way I wanted to in the first," said the 24-year-old, who was in the first Masters semi-final of his career. "But I gave myself chances in the second.
"The room for error is so little," he said of the challenge posed by Federer. "Especially on his serve, he doesn't give you anything."
Federer hasn't been broken in the tournament, and in fact has faced just one break point, against Nadal.
The closest Sock got was a deuce in the eighth game of the second set, and Federer quickly dispersed the whiff of danger with two forehand winners.
Federer has a 19-3 career record against Wawrinka, and has never lost to his compatriot on hardcourt.
They met most recently at the Australian Open, where Federer prevailed in five sets in a semi-final.
Wawrinka better and better
Wawrinka's path to the final, just his fourth at the elite Masters level, included a close shave against lucky loser Yoshihito Nishioka in the fourth round and a third-set tiebreaker against rising Austrian talent Dominic Thiem in the quarter-finals.
Wawrinka was even more dominant against Spain's 23rd-ranked Carreno Busta, however, it was clear sailing for the three-time Grand Slam champion, who didn't face a break point in the 64 minute match.
One break of Carreno Busta's serve was enough to give him the first set, and Wawrinka earned a hard-won break for a 2-1 lead in the second with a blistering forehand on his fifth break point of the game that Carreno Busta had no hope of getting back.
Another break in the seventh game left Wawrinka to serve it out, and he punctuated the contest with a love game.
"Most of the time I know when I start to win the matches in the tournament, I start to get the confidence, the good feeling with the ball, with the way I'm playing in the tournament," Wawrinka said. "I know I play better and better."