MONTREAL -- David Desharnais scored 56 seconds into overtime to give the Montreal Canadiens a comeback 2-1 victory over the Detroit Red Wings on Tuesday night.

Desharnais poked the puck in from the side of the net after Jimmy Howard made saves on blasts from Max Pacioretty and P.K. Subban as Montreal (6-1-0) won a third game in a row.

Henrik Zetterberg, with an assist from Pavel Datsyuk, scored in the second frame for Detroit (3-1-2).

Alex Galchenyuk tied the game with 3:09 left in the third period with each team down a man as he came out from behind the net and stuffed the puck inside the post.

Datsyuk returned from a shoulder injury to play his first game and was involved in the Zetterberg goal. The three-time Selke Trophy winner picked himself up after being knocked down at centre ice and got the puck to the Swede on the right side.

Zetterberg broke in, cut to the left and saw his low shot go off goalie Carey Price, the crossbar and defenceman Subban and go into the net at 13:41 of the second frame.

P.A. Parenteau had a glittering chance to tie it on Montreal's first power play of the game late in the second, but hit a goalpost with Howard's net open.

Datsyuk was on a two on one break at 11:51 of the third when he spun in the slot and put the puck in the top corner with a backhander, but the spectacular goal was waived off because Justin Abdelkader had bumped Price in his crease.