Dallas Stars left winger Loui Eriksson collected two goals and an assist, while goalkeeper Jhonas Enroth produced 30 saves the victorious hosts.
The result kept alive the Swedes’ hopes of becoming the first team to win the gold medal on home ice since the former Soviet Union did it in 1986.
“It’s really great to battle into the final past such a tough opponent like Finland,” Sweden’s manager Par Mårts said.
“They (Finland) are a well-organized and disciplined team.”
“It was a tricky game in your own home building. We were under pressure as everybody here expected nothing less than the win from us. But I think we played a good game today and deservedly got a place in the final.”
Sweden opened the score 10:33 into the match on a powerplay through Vancouver Canucks center Henrik Sedin, who sent the puck into the net with the help of a ricochet off Eriksson, who was credited as the scorer.
The Finns poured into attack and began peppering Enroth with shots as they sought an equalizer, but to no avail as the Buffalo Sabres netminder was in complete command.
Eriksson made it 2-0 for Sweden with 3:47 remaining in the second period, firing the puck under the crossbar from Henrik Sedin’s pass from behind the goal line when Finland’s forward Petri Kontiola was in the sin bin.
In the third period the Swedes were sitting comfortably on their advantage, confidently stifling Finland’s attacking efforts.
Finland’s manager Jukka Jalonen substituted goalie Antti Raanta for a sixth outfield player with 1:47 remaining but only to allow Henrik Sedin to score an empty-netter at 59:37 to secure the Swedes’ well-deserved win.
“We were not playing that bad but squandered all of our scoring chances,” Jalonen said.
“Besides, the special teams made the difference today as Sweden’s powerplay was very good, very efficient, while we failed to score on powerplay as well.”
In the Sunday’s final Sweden will meet Switzerland, which continued their improbable unbeaten streak by beating the United States 3-0 in Saturday’s other semi-final.