EDMONTON, Alberta 
Brendan Gallagher and Alex Galchenyuk each had a goal and an assist and the Montreal Canadiens won for the second time in their past three outings, defeating the Edmonton Oilers 4-1 on Thursday night.

Brandon Prust and Max Pacioretty also scored and P.K. Subban had three assists for the Canadiens (2-2-0), who were making their second stop on a four-game Western Canadian trip.

Ryan Smyth scored for the Oilers (1-3-0), who will start a six-game road trip.

Edmonton's best early opportunity came 11 minutes in when defenseman Justin Schultz pinched in from the point and had a point-blank shot on net, but hit Montreal goalie Peter Budaj in the face, ripping off his mask.

With seven minutes left in the first, the puck was in the Edmonton crease with Oilers starter Devan Dubnyk out of the play, but defender Nick Schultz was able to swoop in and send it away.

The Oilers went up 1-0 on the power play 2 1/2 minutes into the second period as Taylor Hall sent a pass in front from the side of the net and a diving Smyth was able to get a piece of it and direct it past Budaj.

The Canadiens tied the game with a power-play goal at 9:24 of the second as Galchenyuk floated a pass to Gallagher at the side of the net and he was able to swat it in with the heel of his stick for his third of the season. Galchenyuk earned his sixth assist in four games on the play.

Montreal then edged ahead 2-1 with eight minutes to play in the second as Dubnyk was able to make a kick save in tight, but couldn't keep Prust from sweeping in his own rebound from the shot.

The Canadiens came close to adding to their lead with 11 minutes left, but Gallagher rang a shot off the post.

Montreal made it 3-1 three minutes later, going out on a 2-on-1 break with an Oilers defender pinching, as Gallagher made a good pass to Galchenyuk and he scored his first of the season before Dubnyk could get across.

The Oilers pulled their goalie with four minutes left and had a chance when Ales Hemsky hit a post, but Pacioretty ended any hopes of a comeback with an empty-netter.

Notes: It was the first meeting between the teams since March 8, 2012, a game won 5-3 by the Canadiens. ... Peter Budaj made his first start of the season in net for the Habs. ... Nail Yakupov and Alex Galchenyuk faced each other for the first time since they were teammates in junior with the Sarnia Sting of the Ontario Hockey League for two seasons. Yakupov was drafted by the Oilers first overall in 2012 and Galchenyuk was selected in the third spot overall by the Canadiens. ... Montreal defenseman Josh Gorges returned to the lineup after only playing one shift in the third period in his team's loss to Calgary on Wednesday night before leaving with an injury. ... Smyth returned to the ice for the Oilers after being a healthy scratch in Edmonton's last game.