Lang had two goals and an assist, and Tanguay and Kovalev each had two assists to lead Montreal to a 4-1 victory against the Calgary Flames on Tuesday night.
Reunited with Kovalev -- his linemate with Pittsburgh earlier in the decade -- for the past four games, Lang was asked if the pair had recovered their old magic.
"I don't know, but the result was there," said Lang, who had an assist on Andrei Markov's goal in the third.
The Canadiens improved to 4-0-1 on their franchise-record seven-game homestand.
Kovalev assisted on Lang's goals in the first and second periods in his 1,100th regular-season game.
"I'm just happy I'm healthy and I've been able to play a lot of games," said Kovalev, who failed to score a goal for a 17th game in a row, two short of his longest career drought -- set in 1995-96 with the New York Rangers.
Tanguay, acquired from Calgary in a draft-day trade in June, picked up his second assist on Markov's goal, giving the line a total of seven points.
Halak had gone 0-2-1 in four starts since winning his first two outings. The 23-year-old Slovak has allowed one goal in each of his three victories this season.
"He was very, very solid in net for them and probably was a difference maker," Flames coach Mike Keenan said.
Dustin Boyd scored Calgary's lone goal in the second in his return to the lineup after missing five games because of a shoulder injury.
Miikka Kiprusoff stopped 27 shots in his 13th consecutive start for the Flames. Kiprusoff has started 27 of Calgary's 28 games to date.
The Flames were upset Markov was given only a tripping call with 1:54 remaining in the third for his collision with defenseman Dion Phaneuf.
"All I know is I cut in and my legs were taken out, and you're not allowed to do that," Phaneuf said.
Keenan felt it was a "flagrant knee."
"I don't understand it," Keenan said. "They're supposed to be experienced officials who can't or shouldn't miss calls like that."
Montreal defenseman Mathieu Dandenault will be out indefinitely after he left the game with a broken arm during the second period.
The Canadiens also lost left wing Christopher Higgins 14:43 into the first. He suffered an upper-body injury and did not return.
Higgins will have an MRI on Wednesday.
"We'll know more after that," Canadiens coach Guy Carbonneau said. "I can't tell you if it's one day or six weeks."
Lang's shot from the left side went in off Calgary defenseman Matt Giordano's leg as Montreal opened the scoring 3:41 in.
D'Agostini made it 2-0 when he scored on a spectacular individual effort 4:17 into the second for his fifth point in five games since being called up from Hamilton of the AHL on Nov. 27.
"It's gone according to plan, I'd say, but even I never thought it would come like this, this fast," D'Agostini said. "The goals are coming, obviously, but I'm pretty happy with my all-around play and hopefully I can continue to do better and better."
The Montreal rookie blocked Flames defenseman Adam Pardy's shot at the left point and pushed the puck ahead as he drove up ice with Pardy and Cory Sarich in pursuit. Kiprusoff got caught in no-man's land when it looked like the puck had gotten away from D'Agostini, who instead reached out with his stick and pulled it back, before moving around the Calgary goalie to put a shot into a wide-open net.
Boyd drew Calgary within 2-1 with his eighth goal at 6:32. Flames captain Jarome Iginla fed a cross-ice pass as Boyd drove the left side and put a shot over Halak into the top of the net.
Lang restored Montreal's two-goal lead at 15:18 with his second of the game, his 10th of the season.
- Flames RW David Moss ended a four-game goal streak.
- Kovalev has 373 goals and 524 assists.
- Montreal RW Sergei Kostitsyn returned after Carbonneau left him out of the lineup for three consecutive games.
- RW Georges Laraque joined LW Guillaume Latendresse and D Ryan O'Byrne as healthy scratches.