With Marc-Andre Fleury pulled for the extra skater on a delayed penalty, Kaprizov scored on a rebound at the side of the net.
"Having the first three games very challenging and not winning, every single shift feels like it's tiring when you make a lot of mistakes, you don't do well in your own zone, every shift seems difficult," Kaprizov said. "… You try, work hard and maybe feel better, and after a win, of course, it's no pressure now. A little bit easy."
Vancouver coach Bruce Boudreau was denied his 600th NHL win for the sixth straight time, dating back to the finale last season.
"I told the players today. I said, 'One of the things when you're not winning because you want to win so bad, you start learning good habits,'" Boudreau said. "The good habits keep coming. You might still lose for a couple, but once you get those good habits down, then you start winning and you keep those good habits. It's usually a way to be successful."
Kaprizov had three points, Mats Zuccarello scored twice, and Alex Goligoski played his 1,000th NHL game for Minnesota, which went 1-3-0 on a season-opening homestand. Fleury made 23 saves.
"Finally, at home, get a win, came back, we were down twice, came back into it and finally won is a good feeling," Fleury said.