Pastrnak had two goals and an assist, and Hall had three assists.
"I think it was the best game of this year, if we're talking about the full game and 60 minutes," Pastrnak said. "We just stayed in the moment. We were really energized, and it was a great win for us. A big two points."
Patrice Bergeron had a goal and an assist, Charlie McAvoy had two assists, and Jeremy Swayman made 28 saves for the Bruins (29-17-4), who have won two in a row and are 3-1-1 in their past five games.
"It was pretty special [to start]," Swayman said. "I don't know if you guys know, but I had a year in Colorado, during my U-18 year. So it was kind of a dream to play against the [Avalanche] one day, and definitely beat them, so that was fun. I love being in net and being able to get points for this team. It's a good day, and we're happy with the win."
Nathan MacKinnon scored, and Darcy Kuemper made 40 saves for the Avalanche (36-10-4), who had their seven-game road winning streak end.
"We were a little bit sloppy coming out of our zone, and then that kind of translates to the neutral zone and obviously to the offensive zone as well," Colorado captain Gabriel Landeskog said. "They were good tonight. We weren't on our A game. When you have one team that plays their best and one team that doesn't, then it's going to be lopsided at the end of the day. We know we're a better team than we showed tonight. We'll get back on track here Wednesday (at the Detroit Red Wings)."