Four times a winner in Melbourne, Federer was at his brilliant best as he romped to a 6-4 6-3 6-2 victory on Rod Laver Arena - the 814th win of his fabulous career.
Federer will now meet Rafael Nadal in the last four.
The Swiss star said: "I'm very happy. I thought it was a great match.
"It was tough with the sun creeping across the court but it was a quality match against a wonderful player. I know how hard he can hit the ball but I was able to manoeuvre him around."
Federer started superbly, breaking serve at the first attempt to race into a 3-0 lead.
However, any thoughts he had of repeating his 2009 quarter-final win over Del Potro here - he lost just three games - soon disappeared as the Argentine found his range.
A trademark crushing forehand forced an error from Federer in the seventh game to secure the break back.
It was a high standard of tennis but Del Potro, who famously beat Federer to capture the 2009 US Open title, faltered when serving to stay in the set at 4-5. A double fault on set point was a calmatious error.
Federer broke early in the second set to lead 3-1 but Del Potro still had chances to recover.
He missed break point in the very next game and also piled the pressure on as Federer served for the set at 5-3.
Four break-back opportunites were squandered - Federer roaring his approval as he saved one of them - and the Swiss eventually held to lead by two sets.
Del Potro had never come from such a deficit to win and he never looked like doing so in this match either.
A couple of sumptuous backhands - one a pushed return winner, the other a devilish slice - saw Federer gain another early break and a second moved him 5-2 ahead.
He duly served out to complete victory in a minute under two hours.