The Serbian world number one downed third seed Federer 6-1, 6-2, 3-6, 6-3 in two hours, 19 minutes and will face either Andy Murray or Milos Raonic in Sunday's final.
It was the 45th meeting between the two greats with Djokovic now edging ahead of Federer 23-22 in their head-to-head duels.
The amazing Serb continued his recent domination over the 17-time Grand Slam champion and on Sunday, he will become the first man in the Open era to contest six Australian Open finals.
“I played an unbelievable first two sets but that is what is necessary against Roger as he has been playing at a very high level in this tournament,” Djokovic said.
“I knew he was going to be aggressive and mix up the pace and try to come to the net, but I came out with the right intensity with great concentration and I executed everything perfect.
“But it was a battle in the end.”
It will also be Djokovic's 19th Grand Slam final overall and he moves into equal-third place with Ivan Lendl on the all-time list of most appearances in major finals, which is headed by Federer.
The ten-time Grand Slam champion was in sensational form in the opening two sets, carving up Federer in their 15th Grand Slam encounter with his fabulous groundstrokes for the loss of only three games in just 54 breathless minutes.
He broke Federer's first service to 15 and then held his serve to lead 3-0, winning 12 of the first 14 points.
The Swiss third seed was broken again in the sixth game, netting a forehand with Djokovic in full cry.
Djokovic's 6-1 first set was his easiest opening-set win over Federer.
He won 24 points to 11, with the rushed Swiss making 12 unforced errors.
Federer was broken to love in the third game in a similar start to the second set, with the world number one able to do no wrong.
He broke again in the fifth game and made it two sets to love with less than an hour gone.
Four-time Australian Open winner Federer probed for a way back in, with the crowd urging him on, and he broke Djokovic for the first time in the sixth game of the third set.
The Swiss was finally putting pressure on Djokovic and he claimed the third set on his third set point, to a thunderous roar on Rod Laver Arena.
But both players had to cool their heels as play was delayed to enable the stadium roof to be closed ahead of expected rain, making for indoor playing conditions.
Djokovic broke Federer for a fifth time in the match in a sensational eighth game of the fourth set, featuring a forehand return winner for the break, and he safely served out for the match in the following game.