Denis Shapovalov and Vasek Pospisil held their nerve in an epic third-set tie-break to prevail after over two hours and clinch their place in Sunday's tournament showpiece.
Andrey Rublev and Karen Khachanov believed they had done enough on numerous occasions in the match, but it was not to be for Russia as Canada won a tense and dramatic deciding breaker.
Russia pip Serbia in thrilling and tempestuous Davis Cup quarter-final
Eventually, Canada secured their progression in emotional fashion as they won the breaker 7-5 to set off wild celebrations by the team, staff and fans in the stadium.
Earlier in the tie, Rublev beat Pospisil 6-4 6-4 before Shapovalov won 6-4 4-6 6-4 over Khachanov to level things up and take the tie into a crucial third rubber.
It is the first time that Canada have reached the final of the Davis Cup - albeit in its revamped new format - with their previous best results coming in 1913 and 2013 when they reached the semi-finals.
Canada will now face the winner of Great Britain's semi-final against hosts Spain on Sunday afternoon.
"I don't think any of us expected that we could get this far," Shapovalov said. "We knew we have a great team. But you have to have a little bit of luck on your side and just play some ridiculous tennis and play at a ridiculous level.
"I think we just absolutely played ridiculous tennis. I'm super-stoked to be in the final. It's one of my dreams, you know, to play in the Davis Cup final."
In-Depth: Is this Nadal's best ever year?