DENVER — The Blackhawks didn’t have to worry about slow starts, moral victories or last-minute letdowns this time.

Their 5-2 upset of the Colorado Avalanche on Monday at Ball Arena was neither a model of consistency nor an example of pretty hockey. But the Hawks got enough from both sides of the ice to get the job done, which is better than the alternative this season — the bottom falling out with a win within grasp.

“We’ve had games where we haven’t played a full 60 minutes, (and) I still think there were a couple minutes where we felt like they had some control,” said Hawks forward Ryan Donato, who scored two goals. “But this time we didn’t just let that happen. We dialed it back in.”

You would think this roster would be equipped for a track meet, and that’s where the Hawks found themselves from the outset. The teams traded five goals between them in the first period — three coming within a frenzied three minutes.

Donato drew a penalty and Philipp Kurashev scored off a feed from Alex Vlasic. Casey Mittelstadt answered with the Avs’ first goal 1 minute, 29 seconds later, but Lukas Reichel deflected in Craig Smith’s shot 48 seconds after that. Donato later swept in Jason Dickinson’s rebound to push the lead to 3-1.

The Hawks would have been well-positioned to take that lead into the first intermission, but Tyler Bertuzzi and Wyatt Kaiser committed back-to-back penalties to create a five-on-three. The Avs’ Nathan MacKinnon made Seth Jones look like he was standing still on a curling power-play goal to draw within 3-2.

This is the scene when the Hawks usually fold like a cheap suit, but not this time.

Instead, they held the Avalanche scoreless for the second and third periods.

“We didn’t like our second period in Dallas and felt like we needed to put together more of a complete game and know that we have it in us from periods we’ve shown in the recent past,” Connor Murphy said. “So it was important for us to stick with it in the second and then come out in the third with a little fire.”

Donato and Ilya Mikheyev added a couple of insurance empty-netters.

The Hawks halted the Avs’ five-game winning streak and stopped their own five-game skid.

Coach Luke Richardson said the Hawks mirrored the way they handled the Edmonton Oilers in another 5-2 win.

“Very similar against a strong team with strong individual players,” he said. “We checked them very well, played a smart game.”

Richardson praised the goaltending, defense and special teams.

“But to me,” he said, “it was Dickinson’s line (that) made a big difference for our team tonight.”Dickinson’s line with Donato and Mikheyev went head on against MacKinnon’s line with Ross Colton and Mikko Rantanen. The Hawks line scored; MacKinnon’s line didn’t.

“Jason’s doing a great job down low making sure those guys don’t get their scoring chances, and he plays the right way,” Donato said. “So when you play against those guys, they don’t want to play as much defense. They’re so offense-oriented — and that’s because they’re great at it.

“But (we were) limiting their chances and frustrating them and trying to score while you can at the same time.”

Here are four takeaways from the win.

1. Greasy was the way to go against a slick team like the Avs. On Reichel’s goal, he wasn’t even facing the puck when it caromed off his body. He was just attacking the crease.

His goal and Donato’s first encapsulated the way the Hawks played the whole game.

“You go hard to the net and you say your prayers, really,” Donato said. “The puck can go anywhere. For me, it was a lucky bounce and I was lucky to put it away. But getting to those areas is definitely hard and I think we could do more of that.”

Richardson agreed: “We’ve seen one or two go against us, and it was about time one bounced in for us. Especially the Reichel one I thought was big. We deserved what we got tonight.”

2. Ryan Donato ‘goes to those hard areas.’ Donato didn’t mind admitting how he felt after scoring an empty-netter to take some steam out of Colorado’s late push.

“Relief,” he said.

When the Hawks have had leads this season, they’ve taken their foot off the gas, given up a goal and the opponent is “back in the game and we just find a way to not finish it off,” Donato said. “Tonight, we all came in the locker room after the second (period) and said it wasn’t good enough, we’ve got to step back up.”

After the game, Donato’s face looked like he had been in a fight, visual evidence the crease is not for the meek.

“I’m glad to see him get rewarded with a couple goals tonight because he goes to those hard areas,” Richardson said. “He’s bleeding out of the nose and the lip, and he’s coming to the bench smiling because he’s got a goal.”

3. Is Alex Vlasic the Hawks’ best offensive defenseman? OK, maybe let’s not get ahead of ourselves, though he has surprised with five assists in the first 10 games, including three in the last four games.

It’s the matter-of-fact confidence he’s showing.

Before Kurashev’s goal, Vlasic evaded two penalty killers, took a hard shot at goaltender Alexandar Georgiev, collected the rebound and circled behind the net, prowling for another look.

Just like Vlasic’s heady centering pass on Connor Bedard’s goal against the Nashville Predators, he spied an opportunity to set up Kurashev and slid the puck to him in the slot. Kurashev did the rest.

“That’s probably the perfect word: He’s evolving,” Richardson said. “Just his skating ability, he’s getting more confident shooting the puck, moving the puck.”

4. Connor Murphy said there ain’t nothing between us but air and opportunity. One minute, 40 seconds into the third period, Murphy leveled Logan O’Connor as the Avalanche forward was trying to break the puck out, drawing a “woo” from the crowd at Ball Arena.

“It’s good to start any period nice to get yourself into it with a hit,” Murphy said.

O’Connor didn’t have his head up, which was pretty much an engraved invitation to get blasted. Murphy hit O’Connor so hard, he slid several feet. Pat Maroon took his eyes off the puck for a few seconds to look too.

The defenseman in Richardson seemed to like it.

“That was a nice hit, and it was clean — the best thing,” he said. “I said to the guys, we can’t go to the penalty box again after the second period. … A good, clean hit like that, it kind of rattles the other team (and) brings our team up.”

But Murphy downplayed that he was setting a tone.

“It was opportunity more than anything,” he said. “I don’t think it was really anything to read into it, just being physical is part of the game.”