Russia, eager to make amends for their embarrassing quarter-final exit at the Vancouver Olympics, broke the hearts of 18,000 vocal fans at the Cologne Arena when Detroit Red Wings forward Pavel Datsyuk made the best of a wrong German pass to break free and slot home with less than two minutes left.
Germany captain Marcel Goc had given the hosts an unexpected lead when he fired in from close range after netminder Vasili Koshechkin had saved a Christian Ehrhoff shot late in the first period, lifting the nation's hopes for a first final appearance since 1953.
The Russians leveled midway through the second outing through Pittsburgh Penguins forward Evgeni Malkin, who had earlier missed a good chance. He made amends by beating German netminder Robert Zepp from eight meters for the equalizer.
Earlier the Czech Republic edged past Sweden 3-2 after winning a penalty shoot-out to advance to their first world championship final since 2006.
The Czechs, trailing 2-1 toward the end of the third period, also needed a last-gasp equalizer through Karel Rachunek's thundering slapshot with only eight seconds left on the clock, to send the game into overtime.
It was the second time that the Czechs have beaten the Swedes in the tournament following their 2-1 win in the group stage.
"It is obviously a great feeling," Czech netminder Tomas Vokoun told reporters.
"We struggled in the preliminary round and almost did not make it. We have played elimination-style hockey ever since we lost to Norway (in the group stage). That put us in a very bad spot."
(Writing by Karolos Grohmann, editing by John Mehaffey and Pritha Sarkar)