Hosts Brazil suffered one of the most humiliating defeats in World Cup history as Germany scored five times in the first half ro clinch their place in the final.
Thomas Muller volleyed home following a corner before Miroslav Klose swept in to become the World Cup’s all-time leading scorer with his 16th goal.
Toni Kroos drove in the third and then tapped in his second before Sami Khedira made it 5-0 from 12 yards.
Andre Schurrle added two more after the break before Oscar’s late consolation.
Germany will play either Argentina or Netherlands
who face each other on Wednesday in Sunday’s final.