The 25-year-old free agent got a two-way deal that will pay him $900,000 if he sticks with the big club.
"We are very pleased to have reached an agreement with Raphael Diaz, who we strongly believe has all the attributes to play in the NHL," general manager Pierre Gauthier said Friday in a statement. "Raphael is a defenseman with excellent offensive and defensive skills, who constantly improved his play over the years."
Diaz had three goals and an assist in six games and averaged 20:52 of ice time for Switzerland at the world championship.
The Canadiens have only two defensemen under contract for next season, P.K. Subban and Jaroslav Spacek. They must decide whether to try to reach new deals with restricted free agents Yannick Weber, Josh Gorges and Alexandre Picard and unrestricted free agents Hal Gill, Andrei Markov, Roman Hamrlik, Brent Sopel, James Wisniewski and Paul Mara.