The win also saw Real Madrid reach their first Champions League final for 12 years.
Having won last week's first leg 1-0 in Madrid, Real won the semi-final 5-0 on aggregate as Pep Guardiola's Bayern suffered their heaviest home defeat in European competition.
Bayern had previously never lost at home by more than two goals in Europe as the Bavarian giants saw their dreams of reaching a fourth Champions League final in five years crushed.
"We have witnessed a debacle, we didn't put enough passion into it," said Bayern chairman Karl-Heinz Rummenigge.
"We have to keep our nerve and stay rational."
Real are now one game away from 'La Decima' – their 10th European title – and will face either neighbours Atletico Madrid or Jose Mourinho's Chelsea in the May 24 final in Lisbon.
Real centre-back Sergio Ramos produced two early bullet headers to dismiss Bayern's dreams of becoming the first team to defend the Champions League title.
World Player of the Year Cristiano Ronaldo then made it 3-0 at the break before the Real superstar netted his 49th goal of the season with a free-kick just before the final whistle.
Having now netted 16 times in this season's Champions League, Ronaldo set a new record for the most goals in a single European campaign, bettering the previous mark of 14 set by Barcelona's Lionel Messi and ex-AC Milan forward Jose Altafini.
The only downside to Real's stunning win in Germany was the loss of Xabi Alonso for the Lisbon final after he picked up his third booking of the campaign for a first-half foul on Bastian Schweinsteiger.
But there was no denying an historic night for Real, especially for coach Carlo Ancelotti, who has now never lost to Bayern in eight matches, six times with former club AC Milan and twice with Madrid, and who is through to his fourth Champions League final as a coach, equalling the record.
There was a minute's silence before kick-off for former Barcelona coach Tito Vilanova, who died on Friday at the age of 45, and Vujadin Boskov, the former Real coach who passed away on Sunday aged 82.
The Munich crowd soon saw their dreams of a repeat of last season's treble of Champions League, Bundesliga and German Cup swept away as Real floored the Bavarians in a devastating first-half spell.
Real needed just 16 minutes to take the lead at the Allianz Arena as Ramos powered home his first header from Luka Modric's corner to silence the home support.
It was the start of a miserable five minutes for Bayern as centre-back Dante was shown a yellow card for clumsily scything down Ronaldo just before Ramos struck again.
When Angel Di Maria swung in a free-kick, centre-back Pepe flicked it on for Ramos to head home his second goal in just four minutes to leave Bayern reeling.
Real then compounded Bayern's misery as Di Maria played Karim Benzema into space and the Frenchman found Bale, who accelerated away.
His pass was drilled home by Ronaldo on 34 minutes, the Portuguese forward breaking the record for most Champions League goals in a campaign, to leave the hosts 3-0 down at the break.
Guardiola responded at half-time by swapping Mario Mandzukic for Javi Martinez, abandoning his 4-2-3-1 formation for a 4-2-4 system and pushing Schweinsteiger further forward with Thomas Mueller.
Despite Bayern's best efforts, Real's defence held firm and then Ronaldo put the final nail in the holders' coffin with his second of the game when his free-kick went under the Munich wall on 90 minutes.