Ryan Johansen scored twice for the Avalanche (35-18-4), who have won two in a row and three of their past four games. Alexandar Georgiev made 24 saves.
“It's a really good team, and we had to play really well,” Bednar said. “That was a good hockey game. It was intense, and both teams were disciplined. It was hard fought. When you're playing a really good team like that and both teams are dialed in, it's going to be a battle. And that's what it was. Tonight, we came out on top.”
J.T. Miller scored, and Thatcher Demko made 24 saves for the Canucks (37-15-6), who have lost three straight.
“I thought we played a good game,” Vancouver coach Rick Tocchet said. “Probably deserve better, but they made the plays at the end. Did a nice job against [MacKinnon’s line], [Cale] Makar. Those guys are special players, and I thought we did a really nice job against them. It was hard. It's one of those things that we just couldn't score to get the equalizer.”
Miller gave the Canucks a 1-0 lead at 10:46 of the first period, finishing a breakaway with a shot under the glove of Georgiev. Miller went wide along the right boards and cut behind the Avalanche defense before catching a chip pass from Brock Boeser and skating in alone.
“We played some good hockey; they played good hockey,” Vancouver defenseman Quinn Hughes said. “We had a chance at the end there. The goalie made a really good save on that one late in the third, and then we had a chance on the power play.”