The 31-year-old forward scored 36 points (17 goals, 19 assists) in 52 regular-season games with the St. Louis Blues last season, and one goal in four Stanley Cup Playoff games.
He signed a one-year, $4 million contract with the Blues on Jan. 11.
Hoffman said the thought of signing with the Canadiens was too intriguing to pass up.
"There were other options," he said Thursday, "but there's nothing like playing hockey in Canada, let alone Montreal, being an Original Six team and the fans and atmosphere and city. It just has everything that you want as a hockey player to go to a city like that. I'm really looking forward to the opportunity of playing in the Bell Centre in front of all the fans.
"Then obviously the hockey part of it -- I think they've got a great hockey team, some great young talent that's coming up and I think they're going to be good for a long time, so it was an easy decision for me."
Hoffman said he is hoping to be an asset on the Montreal power play without defenseman Shea Weber, who will not play this season because of multiple injuries, and whose
NHL career could be over
.
"That is something that I contribute to and take pride in," said Hoffman, who has reached double digits in power-play goals in three of the past five seasons. "Being able to shoot the puck and being a threat on the power play to help your team win games is the most important thing. Hopefully I can come in there and keep it going.
"I don't think a team is bringing me in to play on the fourth line. ... Obviously I'm more of an offensive player and coming to Montreal, a lot of it had to do with the area, the city, playing in Canada, them having a good team."
Defenseman David Savard agreed to a four-year, $14 million contract with the Canadiens earlier Wednesday. It has an average annual value of $3.5 million.
The 30-year-old scored six points (one goal, five assists) in 54 regular-season games with the Columbus Blue Jackets and Tampa Bay Lightning last season. He did not score a point in 14 games after he was acquired by Tampa Bay on April 10 as part of a three-team trade that included the Detroit Red Wings.
He had five assists in 20 Stanley Cup Playoff games to help the Lightning win the Stanley Cup.
"I was definitely trying to find the best fit, a team that wanted to have me, and I think Montreal showed a lot of interest right away," Savard said Wednesday. "And for me it was easy, the way they spoke to us and the way they wanted us to be there and to be a big part of their team moving forward."
Hoffman was selected by the Ottawa Senators in the fifth round (No. 129) of the 2009 NHL Draft. He has scored 395 points (189 goals, 206 assists) in 545 regular-season games with the Senators, Florida Panthers and Blues, and 20 points (11 goals, nine assists) in 33 playoff games.
Prior to last season, Hoffman had scored at least 22 goals in each of the past six NHL seasons.
The Canadiens also agreed to terms on a one-year, $950,000 contract with forward Cedric Paquette and with forward Mathieu Perreault.
Paquette, 27, scored eight points (four goals, four assists) in 47 games with the Carolina Hurricanes and Ottawa Senators last season. Perreault, 33, scored 19 points (nine goals, 10 assists) in 56 regular-season games with the Winnipeg Jets, and two points (one goal, one assist) in eight playoff games.
NHL.com columnist Dave Stubbs contributed to this report