They now face host nation Sweden who beat Finland 3-0, Loui Eriksson scoring twice.
The Swiss, the only remaining unbeaten team, went ahead when Martin Pluss snapped up a loose puck and laid on a goal for the unmarked Nino Niederreiter.
Julian Walker made it 2-0 with 10 minutes to go when he latched on to Simon Moser's defence-splitting pass before Reto Suri completed the scoring.
With a squad almost entirely made up of home-based players, elated Swiss fans spent much of the final period ringing cowbells and chanting 'Allez' from the stands.
The players threw themselves at every puck in defence and anything that got through was dealt with comfortably by Reto Berra in goal.
"The team played unbelievably," an exhausted but elated Berra told Reuters. "It was a hard fight because it was the semi-final and there was a lot of pressure."
Despite being founder members of the International Ice Hockey Federation, the Swiss will be contesting only their second final, having lost on their only previous appearance in 1935.
"I think we've been really mentally tough in this championship which we haven't been the last couple of years," added Berra, 26.
"It's pumped up in our dressing room. You could see it today, from the first to the last second we were ready."
Earlier, Eriksson netted twice and the Sedin brothers, Daniel and Henrik, grabbed two assists apiece as Sweden ousted Nordic neighbours Finland.
The Swedes endured a sluggish start to the tournament but the arrival of the Sedins from National Hockey League duty with the Vancouver Canucks gave much-needed spark to their offence.
The brothers combined to set up Eriksson for his two goals which both came on the powerplay.
Eriksson knew little about the first as Henrik's shot bounced in off his leg, with Ilari Melart in the sin bin for cross-checking.
At the end of the second period the trio struck again, Daniel finding Henrik whose pass was finished by Eriksson.
Eriksson returned the favour with 23 seconds left in the game, setting up a goal for Henrik.
- Sports & Recreation
- Ice Hockey
- Loui Eriksson
- Reto Berra