Alex Kovalev had his first two-goal game of the season and Jaroslav Halak made 27 saves to win his fourth straight start to help Montreal win its season-high sixth in a row at the Bell Centre.
The Canadiens, who have won six of seven, have 84 points and six games left in the ever-tightening race for the final two playoff spots in the Eastern Conference. The Canadiens remained tied with Carolina for the eighth and final playoff spot.
Halak, 21, won for the seventh time in 11 starts since he was called up from Hamilton (AHL) Feb. 15.
Wild 4, Kings 1 -- Third-string goalie Josh Harding turned in another strong performance to help host Minnesota stretch its franchise-best winning streak to nine games.
Minnesota slipped past idle Vancouver into first place in the Northwest Division -- though the Canucks have played two fewer games.
Harding improved to 3-0-1 since his promotion from the minors.
Hurricanes 6, Sharks 4 -- Cam Ward made the most of his first start in goal in nearly two weeks, helping host Carolina improve to 5-1-1 in its last seven games.
The Sharks, who got a goal from Joe Thornton (his 21st), lost in regulation for the first time in more than three weeks.
Stars 4, Coyotes 3 -- Jere Lehtinen scored the only shootout goal in the seventh round and visiting Dallas rallied from a three-goal deficit.
The Stars pulled even with San Jose for second place in the Pacific.
Maple Leafs 4, Sabres 1 -- Darcy Tucker scored twice and Toronto earned a split of a home-and-home series with Buffalo.
Carlo Colaiacovo and Nik Antropov scored for the Maple Leafs, who are in 11th place, 2 points behind Carolina and Montreal.
Senators 7, Lightning 2 -- Dany Heatley had two goals and an assist to lead visiting Ottawa, which has earned at least a point in 20 of its last 21 games.
Dan Boyle had two goals for the Lightning, and Vincent Lecavalier added two assists to become the first Tampa Bay player to reach 100 points in a season.
Devils 4, Panthers 3 -- Travis Zajac scored the winner in a shootout as visiting New Jersey broke a season-high three-game losing streak. Jim Dowd broke out of a 4 1/2-month scoring drought with a pair of goals in regulation for the Devils, who remained 2 points ahead of Pittsburgh atop the Atlantic.
Islanders 4, Flyers 3 -- Andy Hilbert scored the decisive goal with less than five minutes remaining to lift New York over host Philadelphia, which has lost four straight. Richard Park, Randy Robitaille, and Jason Blake also scored for the Islanders, who are a point out of eighth place in the East.
Penguins 2, Thrashers 1 --Jordan Staal was credited with the fluky winning goal with 9:41 to play to lift host Pittsburgh. He scored the winner despite standing near the left-wing corner behind the goal line and not trying to shoot the puck.
Blues 3, Red Wings 2 -- Doug Weight scored the only goal in the shootout -- with the help of a replay review -- for visiting St. Louis. His goal was first called a save by Dominik Hasek, but was overturned.
Predators 4, Oilers 0 -- Tomas Vokoun made 26 saves for his fifth shutout of the season to help visiting Nashville snap a two-game losing skid and move 2 points ahead of Detroit for top spot in the Western Conference.