The surging Senators will head into the NHL All-Star break with a sense of accomplishment, having extended their winning streak to four games.
Tim Stutzle scored two goals and added two assists, while Alex DeBrincat and Claude Giroux also found the back of the net for the visitors.
Anton Forsberg made 28 saves.
Rafael Harvey-Pinard kept the Canadiens in the game with two third-period goals. Kirby Dach and Mike Hoffman also scored for Montreal, which dropped its fourth in a row.
Jake Allen made 24 saves for the Canadiens and kept the dreaded Reverse Retro curse going as they hold a 0-6-1 record wearing light blue.
During the morning skate, Canadiens coach Martin St. Louis said he wanted his team to "respect the day and not jump straight into the (All-Star) break." However, the Senators were the ones with a hot start scoring two goals on their first three shots.
50 IN 50
With an assist on Stutzle's goal, Tkachuk reached the 50-point mark in his 50th game of the season. He became the fastest Senator to reach that mark since 2018-19.
Senators: After the All-Star break, host Oilers on Saturday, Feb. 11.
Canadiens: Host Islanders on Saturday, Feb. 11.
AP NHL: www.apnews.com/hub/NHL and www.twitter.com/AP-Sports
Copyright 2023 STATS LLC and Associated Press. Any commercial use or distribution without the express written consent of STATS LLC and Associated Press is strictly prohibited.