Philipp Lahm scored a last-minute winning goal for the Germans against a Turkey side who would feel unlucky not to have forced extra-time.

Lahm got on the end of Thomas Hitzlsperger's pass to fire past Rustu Recber in the Turkish goal to end a thrilling match.

in front 

Ugur Boral had put Turkey in front after 22 minutes, but Bastian Schweinsteiger levelled the scores five minutes later.

Miroslav Klose nodded Germany 2-1 ahead in the 79th minute, but Semih Senturk got Turkey back on level terms with just four minutes left.

Then Lahm's dramatic 90th minute goal proved decisive as Germany won 3-2 and now meet either Spain or Russia in Sunday's final.