Nick Suzuki had two assists, and Juraj Slafkovsky scored for the Canadiens (31-17-7), who have won three in a row. Jakub Dobes made 36 saves
Owen Power and Noah Ostlund scored for the Sabres (31-18-5), whose five-game winning streak ended. Alex Lyon, who had won his past 10 starts, made 27 saves.
Slafkovsky gave Montreal a 1-0 lead on the power play at 11:20 of the first period. Suzuki fed a saucer pass to Slafkovsky in the slot, where he snapped a shot over Lyon's glove.
Power tied it 1-1 during a delayed penalty at 7:36 of the second period, using Zach Benson as a screen and beating Dobes with a wrist shot from the top of the left face-off circle.
Ostlund put Buffalo ahead 2-1 with a power-play goal at 18:57 when he scored from the slot on a one-timer off Alex Tuch's pass from below the goal line.
Caufield evened it 2-2 when he redirected Noah Dobson’s seam pass in the slot past Lyon’s right skate at 4:14 of the third period.
Caufield then put the Canadiens ahead 3-2 at 10:13, taking a cross-slot pass from Suzuki and lifting a snap shot past Lyon's glove from in tight.
Oliver Kapanen scored an empty-net goal at 19:12 for the 4-2 final.