Caufield reached the milestone at 6:30 of the second period. He drove down the right side on a rush, took a pass from Nick Suzuki, and beat Andrei Vasilevskiy blocker side with a wrist shot from the right circle to make it 1-0.
Caufield, who was given a lengthy standing ovation, is the seventh player in Montreal’s history to score 50 goals in a season, and the first since Stephane Richer scored 51 in 1989-90.
Jakub Dobes made 17 saves, and Suzuki had two assists for Montreal (47-22-10), which has won two straight and 10 of its past 11.
The Canadiens moved two points ahead of the Lightning for second in the Atlantic Division. They are two points behind the Buffalo Sabres, who have played one more game and defeated the Columbus Blue Jackets 5-0 on Thursday.
Darren Raddysh scored the tying goal late in the third, and Vasilevskiy made 19 saves for Tampa Bay (48-25-6), which has lost the first three games of a four-game road trip.
Raddysh tied it 1-1 with 1:51 remaining in the third period, scoring on a one-timer past Dobes' blocker from the top of the right circle with Vasilevskiy pulled for the extra attacker.
Slafkovsky then put Montreal back in front 2-1 just 47 seconds later. J.J. Moser's pass behind the Lightning's net was intercepted by Suzuki, who quickly passed out front to Slafkovsky for a one-timer that went under Vasilevskiy's glove.
Suzuki has 98 points (28 goals, 70 assists) this season, the most by a Canadiens player since Mats Naslund had 110 points in 1985-86.