"We found a way to get a spark in the third," Avalanche coach Jared Bednar said. "We played a real good period to win the game. We stuck with it. We didn't have a great start, but to be able to stick with it and have faith to keep playing our game and execute the game plan we were able to create enough chances to win the hockey game."
Nathan MacKinnon had a goal and an assist, Logan O'Connor scored his first NHL goal, and Philipp Grubauer made 19 saves for the Avalanche (14-8-2), who had lost two in a row.
WATCH: [All Oilers vs. Avalanche highlights]
Jujhar Khaira scored, and Mikko Koskinen made 46 saves for the Oilers (16-8-3), who went 3-2-0 on a five-game road trip.
"Other than the goaltender and the [5-for-5] penalty killing, to play like we did was unacceptable," Edmonton coach Dave Tippett said. "We didn't play hard enough, and we didn't play smart enough."
Oilers center Connor McDavid had his 11-game point streak end. He had 24 points (12 goals, 12 assists) in the run.
"They had lots of jump," McDavid said. "We were on the penalty kill for [9:54], it's tough to build that momentum."
Said MacKinnon: "He's such a tough competitor to defend and we kept him off the scoresheet."
Colorado went ahead 2-1 at 3:05 of the third period when Matt Nieto skated down the left wing and converted MacKinnon's pass on a 2-on-1.