Germany beat Argentina 4-2 in a penalty shoot-out after a tense quarter-final in Berlin ended 1-1 after extra-time.
Lehmann saves Ayala's kick - to put Germany on the cusp of victory
Argentina led when Roberto Ayala took advantage of slack marking to head in a Juan Riquelme corner after 49 minutes.
But with 10 minutes left Michael Ballack's cross was flicked on by Tim Borowski and Miroslav Klose headed home his fifth of the tournament.
Germany scored from their first four kicks but Ayala and Esteban Cambiasso both missed to send the hosts through.
The match ended on a sour note when players and officials from both sides clashed on the pitch, with punches thrown between the rival camps.
Fifa is almost certain to view footage of the incident and could decide to take action against one or both of the teams - although it later emerged that unused Argentina substitute Leandro Cufre was red-carded after the game for his part in the melee.
It was a dramatic finish to a game that took a while to live up to its billing, with both sides failing to reproduce the all-out attacking football of their earlier four matches.
Germany, who now play Italy a semi-final in Dortmund on Tuesday, 4 July, at 2000 BST, had scored inside six minutes in three of their previous games, but there was no flying start this time despite being roared on by the majority of the 72,000 fans in the Olympiastadion.
They still managed the only chances of a disappointing opening half.
Ballack was close with a flashing header from a Bernd Schneider cross, while defender Per Mertesacker turned well to fire in a shot just over the bar.
The South Americans were happy to play their usual patient build-up game, while the Germans were equally content to sit back, bide their time and pick off any stray passes.
Too often Argentina's passage in the final third was blocked by the German defence, who prevented their opponents from an attempt on goal for the opening 45 minutes.
Four minutes after half-time a gap appeared in the German defence when Riquelme's corner found Ayala to head his seventh goal for his country.
Argentina had chances to add to their advantage, most notably when Carlos Tevez set up Maxi Rodriguez, but his usually reliable shooting escaped him and he fired into the side-netting.
Ballack had an effort blocked by Ayala after Abbondanzieri had come for a cross and failed to collect.
Argentina's World Cup hopes are over after shoot-out misery
The keeper injured himself in colliding with Klose and was eventually replaced by Leonardo Franco.
Ten minutes later the substitute keeper was picking the ball out of the net.
Substitute Borowski helped on Ballack's inswinging cross and Klose, who had been kept quiet until then, added the finishing touch with a stooping header.
Neither side could do the business in normal time and some weary bodies took to the field for extra-time, with both managers having used all their changes.
It resulted in a tense 30 minutes of extra-time and an almost slow walk towards the dreaded penalty shoot-out, with both sides restricted to long-range efforts of little note.
Rodriguez was booked for diving in the area although television replays later suggested he had a case for a penalty, having been tripped by Philipp Lahm.
In the shoot-out Oliver Neuville and Ballack, who could barely walk during the extra-time period and could be a doubt for Tuesday's semi-final, made no mistake from the spot before Ayala saw his effort saved by Jens Lehmann.
German pair Lukas Podolski and Borowski and Argentina's Rodriguez were all successful.
But when Cambiasso's low effort was kept out by Arsenal keeper Lehmann the Germans celebrated their fourth World Cup shoot-out success in as many attempts.
Germany: Lehmann, Friedrich, Mertesacker, Metzelder, Lahm, Schweinsteiger (Borowski 74), Frings, Ballack, Schneider (Odonkor 62), Klose (Neuville 85), Podolski.
Subs Not Used: Asamoah, Hanke, Hildebrand, Hitzlsperger, Huth, Jansen, Kahn, Kehl, Nowotny.
Booked: Podolski, Odonkor, Friedrich.
Goals: Klose 80.
Argentina: Abbondanzieri (Franco 71), Sorin, Ayala, Coloccini, Heinze, Maxi, Gonzalez, Riquelme (Cambiasso 72), Mascherano, Crespo (Cruz 78), Tevez.
Subs Not Used: Aimar, Burdisso, Cufre, Messi, Milito, Palacio, Saviola, Scaloni, Ustari.
Booked: Sorin, Mascherano, Maxi, Cruz.
Sent-off: Cufre (after the game, for unsporting behaviour)
Goals: Ayala 49.
Ref: Lubos Michel (Slovakia).
Fifa man of the match: Michael Ballack
Germany's progress continues a trend since 1984 that the hosts have reached at least the semi-finals in a major championship on European soil. Germany remained perfect in World Cup penalty shoot-outs, recording their fourth straight triumph. The only German to miss a spot kick in 18 attempts in World Cup shoot-outs was Uli Stielike in 1982 against France.
For Argentina it was their first World Cup penalty shoot-out defeat, having won their previous three. Roberto Ayala had earlier become the first player to beat the German defence in 336 minutes of play.
Miroslav Klose extended his lead in the 2006 World Cup top scorers' table, by netting his fifth of the tournament. Klose joined Gerd Muller, Jurgen Klinsmann and Helmut Rahn as the only German players to have scored at least 10 World Cup goals.
The dismissal of unused Argentine substitute Leandro Cufre in the scuffle that directly followed the penalty shoot-out, made him a record 10th Argentine to be sent off in a World Cup match. Just like predecessor Claudio Caniggia, Cufre was red carded whilst not even formally on the pitch.
Trivia stats source: Infostrada Sports