David Freese walked to lead off the 10th off Sam LeCure (0-1). Tyler Greene came in as a pinch-runner and advanced on a sacrifice by Yadier Molina. After an intentional walk, reliever Bill Bray entered and walked Daniel Descalso to load the bases.
Carpenter, who returned to the bench after playing the last four games for the injured Lance Berkman, pinch-hit and worked the count full before flying out to right field. Jay Bruce's throw home was unable to nab Greene. It was Carpenter's 11 RBI of the season.
Jason Motte (1-0) worked the 10th for St. Louis.
Cincinnati used two errors and a single for an unearned run to tie the game at 1 in the eighth. Descalso let Ryan Hanigan's grounder go through his legs at second for an error. Reliever Mitchell Boggs mishandled pinch-hitter Wilson Valdez' sacrifice, allowing pinch-runner Devin Mesoraco to reach second. Zach Cozart singled to right two outs later to score Mesoraco.
Carlos Beltran gave the Cardinals a 1-0 lead when he hit a first-inning home run into the right-field bullpen.
Beltran, who also singled and walked, contributed a defensive gem in the third inning. He cut down Drew Stubbs trying to go first to third on a single with a one-hop throw to Freese from right field.
St. Louis starter Kyle Lohse opened the game with 12 consecutive strikes, and finished with seven scoreless innings. He allowed four hits and struck out the side after a walk and a single in the fourth inning.
Lohse, who threw 90 pitches, allowed struck out six in dropping his ERA to 0.90 after three starts.
Cincinnati starter Johnny Cueto pitched seven innings, allowing seven hits and a run.
After Cueto hit Molina to start the second inning, home plate umpire Tony Randazzo immediately warned him and both benches. John Jay followed with a single to center, but Cueto pitched out of the jam.
St. Louis stranded eight runners in the first four innings when Cueto threw 79 pitches.
NOTES: It was the first extra-inning game of the season for St. Louis. Cincinnati is 1-3 this season in extra frames. ... Berkman returned to the St. Louis lineup after missing four games with a strained left calf and Freese was back after missing two games with a sore finger on his right hand. ... The Reds franchise remains two wins shy of 10,000. ... MLB announced the draft order for the June 4 first-year player draft Tuesday. Cincinnati will select 14th in the first round while St. Louis will draft 19th and 23rd. The 19th selection if compensation for the Los Angeles Angels signing Albert Pujols. The Cardinals have five of the first 59 draft selections. ... Reds 3B Scott Rolen remains in 52nd place on the career doubles list, one behind Andre Dawson's total of 503.
Link to boxscore: St. Louis 2, Cincinnati 1 (10 innings)