Calgary Flames' Sam Bennett, bottom left, celebrates his goal against the Detroit Red Wings with teammates during the third period of an NHL hockey game Friday, Jan. 18, 2019, in Calgary, Alberta. (Jeff McIntosh/The Canadian Press via AP)

CALGARY, Alberta (AP) Led by Sam Bennett, it was long-awaited and much-needed big night for the Flames' secondary scorers.

Bennett scored twice, including the go-ahead goal late in the third period, and added an assist to lead Calgary to a 6-4 victory over the Detroit Red Wings on Friday night.

On the go-ahead goal at 16:06 on the power play, Bennett was sent in on a breakaway on a pass from Derek Ryan, and fired a quick shot inside the post on Jimmy Howard, before toppling over the Red Wings goaltender.

"The puck was bouncing, so I had a little bit of trouble corralling it," said Bennett, who had his first three-point night of the season. "And once I finally did, I was pretty tight and I looked up and the first thing I saw was top glove-hand, so I just put it there as fast as I could."

Calgary finished 3 for 3 with the man advantage, with every goal coming from the second power-play unit, which hadn't produced a goal since Dec. 2. Over the last six games, the Flames are 8 for 14 with the extra man.

"I thought Benny had some emotional involvement in the game and that's when he's at his best," Flames coach Bill Peters said. "Good to see those guys get rewarded because I know they've put a lot of time in at practice, working on the power play."

James Neal, also on that unit, had a goal and an assist for his first multi-point game of the season. Ryan ended up with a pair of helpers. TJ Brodie, who plays the point on that second unit, had an empty-net goal and two assists.

"We want to chip in, for sure," said Neal, whose fifth goal was just his second in the last 33 games. "That No. 1 unit takes a heavy load and rightfully so. For us, when we get a chance to get out there, we want to make something happen. It was good to see that go in tonight."

The Flames' penalty kill also came through. After giving up a 5-on-3 goal early, they shut out the Red Wings the rest of the way while also producing the goal that made it 4-4 at 14:03.

Mark Giordano joined the rush, took a slick feed from Ryan, and fired a shot that deflected off Niklas Kronwall's stick and bounced past Howard. It was Calgary's league-leading 15th short-handed goal.

"When we go over the boards there with a 4-3 lead, we've got to at least keep the puck out of our net on the power play," said Detroit center Dylan Larkin, who had two goals. "We've got to be smarter with the puck."

Detroit finished 1 for 5 on the power play.

"We couldn't get in the zone," said Anthony Mantha, who also had a goal. "We have to blame ourselves. We knew the way they were waiting for us at the blue line there and we just couldn't handle their pressure."

Sean Monahan also scored for Calgary (31-13-5). The Western Conference-leading Flames extend their point streak to seven games (6-0-1). They're 9-1-2 in their last 12 games.

Relegated to backup duties lately, Mike Smith made 31 saves for Calgary to improve to 14-9-1. He has won nine of his last 11 decisions. Making his third straight start, Jimmy Howard had 30 stops for Detroit.

Detroit went ahead 4-3 at 8:35 of the third when Gustav Nyquist got behind the Flames defense and, after mishandling the puck, passed it to Larkin, who scored his 20th.

NOTES: Calgary's Johnny Gaudreau had an assist to extend his points streak to 10 games to tie a career high. ... Travis Hamonic (family illness) returned to the Flames' lineup after missing two games.