Kesler, who had 12 previous two-goal games, scored a power-play goal 1:30 into overtime to lift the Canucks to a 3-2 victory over the Columbus Blue Jackets on Wednesday.
With Columbus defenseman Jan Hejda serving a boarding penalty, Kesler took a pass from Daniel Sedin on a 2-on-1 break down low and fired a quick shot over the outstretched pad of goalie Mathieu Garon.
"It just felt good to get it off my back," said Kesler, who has three other two-goal games this season. "I was sniffing for a while to get that third one, not only this year but last year."
Roberto Luongo made 28 saves, and Sedin extended his point streak to nine games on the winning goal as Vancouver improved to 7-1-1 its last nine games.
But the real story was Kesler, who opened the scoring late in the first period, put the Canucks ahead on a breakaway midway through the second, and ending things with his 15th goal of the season in overtime.
"He certainly was the best player on the ice," Columbus coach Scott Arniel said. "Sometimes he gets overshadowed by other players on the team but his speed and his skill are real dangerous."
Tom Sestito tied it with his first NHL goal and point on a power play 7:34 into the third period, parking his 6-foot-5, 228-pound frame atop the crease and deflecting Mike Commodore's low point shot past Luongo. Derick Brassard also scored, and Garon finished with 27 saves for the Blue Jackets, who have two wins in 10 games (2-5-3).
Columbus rallied for a second straight game to earn a point before losing in overtime.
"We've shown there's a lot of heart on this team, and we're right there," Sestito said. "It's close, and hopefully we start getting two points."
Kesler opened the scoring with 22.9 seconds left in the first period, shortly after Luongo made a great right pad save off Derek Dorsett on a 3-on-1. Kesler, robbed on a partial breakaway five minutes earlier, took a drop pass from Alex Edler, and snapped a 20-foot wrist shot past Garon's blocker.
"He's a great shooter," said Garon, who got the start after replacing Steve Mason after two goals just 4:25 into Monday's 3-2 overtime loss at Calgary.
Brassard tied it after a turnover created a 2-on-1 down low with Rick Nash, but Kesler added his second two minutes later. This time the puck bounced over Rostislav Klesla's stick in his end, sending Kesler in alone.
"The second one was kind of luck," Kesler said. "It did seem like the puck was magnetized to my stick. It's one of those games you feel good out there."
Columbus had two great chances to tie it early in the third. But Kesler made a diving pokecheck to take a great chance away from Brassard in the slot 90 seconds into the period, and Jakub Voracek shot a backhander off the post on a breakaway after deking Luongo to the ice 30 seconds later.
The Blue Jackets tied it when their 29th-ranked power-play unit connected. Columbus was held without a shot on its first two advantages, but needed only 10 seconds on its third when Sestito was left alone in front.
"It was a big relief," said Sestito, playing his third game this season and seventh in his NHL career. "It's my first one, and it feels a little better that it's one to help the team."
- Columbus LW Kristian Huselius returned after missing 22 games because of a high ankle sprain.
- Klesla played his 500th NHL game, all with Columbus.
- Dorsett left the game midway through the second period with what Arniel labeled a lower-body injury, and will be re-evaluated before Thursday's game in Edmonton.
- Sedin has four goals and nine assists during his point streak.