That changed in the final seconds, when Foligno drove up the right wing and slid a pass into the crease. Ennis got two whacks at it only to be stopped by Peter Budaj. And then Vanek, while lying face-down on the ice, somehow got his stick on the puck to shove it through the goalie's legs.
Vanek and Montreal rookie Alex Galchenyuk traded goals in the first round of the shootout. Pominville then scored on Buffalo's third opportunity by snapping a shot over Budaj's glove.
The Canadiens appeared to take control when Plekanec scored on a breakaway 45 seconds into the third period to make it 4-2.
Subban made it 3-2 by one-timing a shot from the left circle with 1:28 left in the second. It came during a two-man advantage after Cody Hodgson (hooking) and Ott (high-sticking) were penalized 33 seconds apart.
Subban extended his point streak to four games (two goals, two assists), all coming since making his season debut in a 6-1 win over Buffalo last weekend after signing a two-year, $5.75 million contract.
The Sabres went 1 of 7 on the power play and squandered their own two-man advantage that spanned 46 seconds early in the second period.
Buffalo was playing catch-up all evening in a game the Canadiens never trailed.
The teams exchanged goals 15 seconds apart before the game was 5 minutes old. Plekanec opened the scoring with a shot from the right circle that beat Miller over the far shoulder. Buffalo responded with Jochen Hecht setting up Ott in front.
The teams then traded goals 35 seconds apart midway through the second period, with Gallagher scoring from the slot before Ennis tied it on a breakaway.
RANGERS 4, ISLANDERS 1: At Madison Square Garden, rookie J.T. Miller scored his first two NHL goals in his second career game to lift the Rangers.
Miller, who won't turn 20 until March, gave the Rangers a 1-0 lead just 1:29 in and then pushed their advantage to 3-1 in the second period with a rare power-play goal for the club. Marian Gaborik also scored, defenseman Marc Staal had two assists and Ryan McDonagh added an empty-net goal to give the Rangers their second win in three games.
The Rangers have an eight-game winning streak over the Islanders at Madison Square Garden, outscoring them 35-11.
PENGUINS 5, CAPITALS 2: In Pittsburgh, Sidney Crosby extended his points streak to six games with a goal and two assists.
Evgeni Malkin also added a goal and two assists while Pascal Dupuis, James Neal and Matt Cooke scored for the Penguins, who have won five straight. Pittsburgh's revamped power play produced three goals, while Marc-Andre Fleury stopped 23 shots for the Penguins, who moved atop the Eastern Conference standings by beating Washington at home in regulation for the first time in more than five years.
Alex Ovechkin and Mike Ribeiro scored for Washington but couldn't stop the NHL's worst team from losing for the fifth time in its last six games. Michal Neuvirth made nine saves for the Capitals before getting pulled for Braden Holtby, who promptly let in three goals in his first seven minutes on the ice.
PANTHERS 3, FLYERS 2, SO: In Philadelphia, Jonathon Huberdeau and Peter Mueller both scored goals in a shootout to lead Florida.
Florida's Stephen Weiss tied the game at 2 midway through the third period with his first goal of the season. Jack Skille also scored for the Panthers.
Matt Read and Jakub Voracek both scored goals for the Flyers. Read continued to have his way with the Panthers. Read notched his first career hat trick last month against the Panthers and his second-period goal against Jose Theodore was his sixth goal against them in six career games. He has 28 career goals.
Read was stopped by Theodore in the shootout. Claude Giroux also came up short in the second round.
DEVILS 4, LIGHTING 2: In Newark, N.J., Ilya Kovalchuk broke a tie with a short-handed goal late in the second period and New Jersey Devils won its third straight game.
Andy Greene and Patrik Elias iced the game with power-play goals 14 seconds apart with less than 5 minutes to play as the Devils (6-1-3) sent the Lightning to their third consecutive loss. Elias also had two assists.
Adam Henrique scored for the second game in a row and Martin Brodeur made 17 saves for New Jersey.
Nate Thompson and Matthew Carle scored for the Lightning, who have five goals during their losing streak. Tampa Bay scored 37 times in starting the season 6-1.
FLAMES 4, BLUE JACKETS 3, OT: In Columbus, Ohio, Alex Tanguay scored on a one-timer 1:07 into overtime to lead Calgary past Columbus in a battle of Western Conference cellar-dwellers.
Shortly after Columbus threatened on two shots by Fedor Tyutin, the Flames had an odd-man rush and Jarome Iginla saucered a cross-ice setup to Tanguay, who unloaded from the right dot.
Roman Cervenka, Mikael Backlund and Lee Stempniak scored for the Flames, who won their second in a row. Jiri Hudler and T.J. Brodie each had two assists.
Mark Letestu had a goal and two assists for the first three-point game of his 145-career, while Vinny Prospal had a goal and an assist and Matt Calvert also scored for the Blue Jackets.