Jordan Kyrou and Kyle Clifford scored, Robert Thomas and Jaden Schwartz had two assists, and Jordan Binnington made 26 saves for St. Louis.
"Excited to play a hockey game," Binnington said. "We came out strong as a team. Couple penalties, but we did a good job. The boys stepped up, and we found a way to get it done. We played right until the end."
WATCH: [All Blues vs. Avalanche highlights]
Andre Burakovsky scored, and Philipp Grubauer made 28 saves for Colorado.
"The biggest thing I said this morning was, are we ready to compete?" Avalanche coach Jared Bednar said. "Compete against a live opponent, someone wearing a different jersey. As hard as you compete in (training) camp, as much as I liked our camp, it's a completely different level when you get the opposition in your building. To me, we just got outworked right from the start. Not ready to go, lazy habits, how it was going to be easier than it was. It showed."
Sundqvist moved up to the second line with Thomas and Schwartz because Mike Hoffman, who signed a one-year contract Monday, wasn't eligible to play because his work visa had yet to be approved. The Blues expect Hoffman will be available against the Avalanche on Friday.
"It's next man up," Sundqvist said. "It doesn't matter if it's me or someone else. It's always someone that's stepping up. That's one of our strengths with this team, that we got that mentality. No one really changes their game, they just move up the lineup and play the same style. It's nice to see."