CALGARY -- Elias Lindholm scored twice, and the Calgary Flames won their fifth straight game, 4-3 against the Edmonton Oilers at Scotiabank Saddledome on Saturday.
Cam Talbot made 29 saves winning his third straight start for the Flames (25-17-5), who moved into first place in the Pacific Division.
"That's what we wanted coming into the game," said Talbot, who is 6-2-0 with a 2.05 goals-against average and .940 save percentage in his past nine games (eight starts). "We know that with a little help, these two points were going to be huge."
[WATCH: All Oilers vs. Flames highlights]
Connor McDavid scored for the Oilers (24-18-5), who had won three in a row and finished a five-game road trip. Mikko Koskinen made 29 saves.
"We'll take seven out of 10 points," McDavid said. "That's a positive road trip. But this was a big one for us. This was a big game for both sides. We wanted to find a way to get a big win here."
Video: EDM@CGY: Lindholm scores on bouncing puck
Lindholm scored his Flames-leading 20th goal of the season on a shot inside the face-off circle on the power play 39 seconds into the third period to give Calgary the 4-3 lead.
"If you can help the team win, scoring goals, or any way else, it's always fun to be a part of," Lindholm said. "As long as we're winning."
Lindholm's goal came with Oilers forward Zack Kassian serving a double-minor for roughing Flames forward Matthew Tkachuk.
"You're in a tight game," Edmonton coach Dave Tippett said. "It's 3-3. Get a number and deal with it later. Deal with winning the game. Those things happen. It's an emotional game. It's a battle. I wish we could've killed the penalty for him."
Dillon Dube scored for Calgary to tie it 3-3 at 11:34 of the second period after a failed clear by Ethan Bear.
Lindholm scored 4:04 into the first period to put Calgary up 1-0. Ryan Nugent-Hopkins tied it 1-1 at 5:07 when he took a cross-ice pass from Kailer Yamamoto on the rush.
"I thought we started a little slow with execution," Tippett said. "We were chasing it. We got that first goal and it got us engaged in the game a little bit."
McDavid made it 2-1 at 9:06 when he lifted a shot under the crossbar on a breakaway for his 25th of the season. Johnny Gaudreau tied it 2-2 at 19:19 with a wrist shot from the top of the circle that deflected off Adam Larsson.
Nugent-Hopkins put Edmonton up 3-2 at 1:24 of the second period. Yamamoto forced a Gaudreau turnover inside Calgary's blue line and passed to Nugent-Hopkins, whose shot deflected off Gaudreau's skate.
"It was unfortunate on that third goal, lost my edge, then it hit off my skate," Gaudreau said. "The boys battled back in terms of the big tying goal in the second and then our power play stepped up and found a way to win the game and then our [penalty kill] had a great kill late in the third there against a real good power play."
Video: EDM@CGY: Gaudreau banks puck off defender in front
They said it
"It was a good game. There were a lot of emotions, more like a [Stanley Cup Playoff] game. It was a fun game to play in and that was a huge win for us and now we have to keep building." -- Flames forward Elias Lindholm
"That's a playoff game. Fun for the fans. We just come up on the short stick. Frustrating, for sure. We had chances to tie it late. We had chances in the third. I thought we pushed hard in the third. We didn't end up winning, but that game is not going to make us or break us. Frustrated we're not leaving here with two points but there's still a lot of hockey left." -- Oilers forward Zack Kassian
Need to know
McDavid has 12 points (five goals, seven assists) in his past nine games and leads the NHL with 71. ... Gaudreau has eight points (three goals, five assists) in his past six games. ... Flames forward Sean Monahan had an assist needs one point for 400 in the NHL. ... Koskinen is 2-3-0 with 4.18 goals-against average and .867 save percentage in his past five starts. ... Nugent-Hopkins has 10 points (five goals, five assists) in the past six games.
Oilers: Host the Nashville Predators on Tuesday (9 p.m. ET; ESPN+, SNW, FS-TN, NHL.TV)
Flames: At the Montreal Canadiens on Monday (7 p.m. ET; TSN2, RDS, SNW, NHL.TV)
Video: Lindholm scores twice, Flames edge Oilers