WATCH: All Flames vs. Canadiens highlights
Price lost his shutout with 1.1 second remaining in the third period when Sam Bennett scored a power-play goal.
"I took a bad penalty and it cost us a goal," said Radulov, who was penalized for hooking with 53 seconds remaining. "[Price] was there for us today and he deserved a shutout. It's tough but I'm going to work on those things and make sure it never happens again."
Canadiens coach Michel Therrien challenged the Flames were offside on the goal, but the goal was upheld after review.
"At the end of the day, it doesn't really matter that much," Price said. "I've never been a big statistics guy. We needed the win more than anything, so that's the way it goes."
Chad Johnson made 15 saves for Calgary (24-24-3), which has lost four consecutive games, including 4-0 at the Toronto Maple Leafs on Monday.
"We were pathetic," Calgary coach Glen Gulutzan said. "We were pathetic. It was a pathetic display. No bite-back, no kickback, accept it, right down; our top guys didn't do anything and we need somebody to step up."
The Flames, who had gone 124:09 without a goal before Bennett scored, have allowed the first goal in nine straight games.
"We're not creating any energy when we get down," Calgary captain Mark Giordano said. "It seems like we're waiting for something else bad to happen. We've got to get out of this funk. The top guys on our team, we know who we are, we've got to do something maybe special to create something to give us a spark."
Radulov's first power-play goal made it 3-0 at 9:02 of the second period. Montreal went up 4-0 on Carr's second goal of the season at 8:08 of the third, and Radulov made it 5-0 with his second power-play goal at 16:07.
Sven Andrighetto set up Shaw's goal, which gave Montreal a 1-0 lead at 19:17 of the first period. Andrighetto carried the puck behind the Calgary goal and back along the right boards before passing to Shaw, who shot past Johnson from the right side for his seventh goal.