Federer, who was close to his imperious best, ended the dream run of Andy Murray’s conqueror, Mischa Zverev, 6-1, 7-5, 6-2 at Melbourne Park for a place in his 41st Grand Slam championship semi-final.
Earlier in the day, Wawrinka beat Frenchman Jo-Wilfried Tsonga in straight sets.
The 35-year-old Federer leads Wawrinka, the fourth seed, 18-3 in their Head-to-Head series.
Federer, bidding to reach the 41st major championship semi-final of his career, took advantage of early nerves for 29-year-old Zverev by winning the first five games – and losing seven points. The first set lasted 20 minutes.
World No. 50 Zverev regrouped and covered the net to keep Federer on the back foot, but, ultimately, was left to rue a missed volley that could have edged him closer to a 4-1 lead. The doubts started to set in and Federer sensed his opportunity, fighting back to break to love for a 6-5 lead.
Zverev kept battling, but his resistance faltered in the fifth game and a 26-point seventh game of the third set. Federer hit 65 winners overall, committing just 13 unforced errors in the one-hour and 32-minute encounter.
Federer won 23 of 32 points at the net (72%), as he booked a thirteenth semi-final place at the Australian Open.
“My expectation was not to play Stan Wawrinka in the semis. I thought maybe I could get to the fourth round or quarters – that’s what I told the Swiss press,” he said.
“For me to play against Stan I have to play aggressive, the more time I give him the better he is. I’m happy he’s got this far but he doesn’t need to go a step further – Stan knows I’m joking.”
Federer is the oldest men’s singles semi-finalist at the tournament since Arthur Ashe in 1978, and the oldest at any Grand Slam since Jimmy Connors reached the 1991 US Open last four aged 39.