Ryan O'Reilly had a goal and an assist, Vladimir Tarasenko scored, and Jordan Binnington made 20 saves for the Blues (32-23-5), whose 11-game winning streak was the longest in their history. St. Louis leads Dallas by four points for third place in the Central Division.
"It wasn't horrible like we didn't do anything right," O'Reilly said. "It just wasn't the way we've been playing as of late."
WATCH: [All Blues vs. Stars highlights]
Jamie Benn scored two goals, Radek Faksa and Tyler Seguin each had a goal and an assist, and Anton Khudobin made 43 saves for the Stars (30-25-5), who had lost three straight and five of their past six. Dallas holds the first wild card into the Stanley Cup Playoffs from the Western Conference, three points ahead of the Minnesota Wild.
"A win is two points, and that's all we really care about," Benn said. "It's nice, obviously, to win the hockey game. We haven't been playing bad hockey, just not going our way. We found a way tonight."
Benn gave the Stars a 1-0 lead at 3:46 of the second period, receiving a cross-ice pass from Miro Heiskanen at the left post that went through the legs of Blues defenseman Alex Pietrangelo.