Facing a 1-1 count with one out, Braun parked a 78 mph Lance Lynn curve ball in the left field seats for the go-ahead run after the Brewers had coughed up a two-run lead in the eighth inning.
The win went to Brandon Kintzler (1-0), who gave up two walks but no runs in his one inning of relief. Lynn (13-7) was tagged with the loss.
St. Louis had jumped out to a 2-0 lead in the bottom of the first on an RBI double by Matt Carpenter and a sacrifice fly by Allen Craig that drove in Carpenter.
Milwaukee got one back in the fourth when Rickie Weeks singled and later scored on a Taylor Green groundout, and tied it up in the seventh when Martin Maldonado walked, went to third on a Jeff Bianchi single and came home on a Travis Ishikawa double.