Lohse (8-4) gave up four hits, walked one and was aided by two double plays. He threw only 69 pitches before a thunderstorm stopped play for 28 minutes with St. Louis ahead 4-0 in the top of the sixth.
That ended Lohse's night. It certainly wasn't anything the Orioles did.
"I felt strong. I wish the rain didn't come," Lohse said. "I felt I could have gone quite a bit deeper than five. But you can't do anything about the weather."
The Orioles, in turn, couldn't do much offensively against the crafty right-hander.
"It's tough to pull the trigger on those balls that start away, then come back over the plate," Baltimore slugger Mark Reynolds said. "We knew he was going to do it; we talked about it pregame. But going up there and executing is a different story. You've got to tip your hat to him because he pitched well tonight."
Cardinals manager Tony La Russa said Lohse would have stuck around for only 25 or 30 more pitches, even if it didn't rain. But once play was halted, the decision became obvious.
"You had the delay and the heart of the lineup -- so why push it?" La Russa said.
After Lohse left, the bullpen preserved his first win in five starts since May 29.
"The guys did a good job," Lohse said.
It was only the second win in seven games for St. Louis since three-time NL MVP Albert Pujols was placed on the disabled list with a broken left wrist. The Cardinals were off Monday after being swept at home in a three-game series by Toronto.
"Obviously, we haven't been playing very well, so it's good to get off on the right foot on the road trip," Lohse said.
It was the Cardinals' first regular-season game in Baltimore. The Orioles had hosted every other NL team since the introduction of interleague play in 1997.
J.J. Hardy homered for the Orioles, who trailed 6-0 before scoring twice off struggling reliever Ryan Franklin in the eighth. Nick Markakis went 2 for 4 to extend his hitting streak to 17 games, tying a career high. He's batting .410 during that span.
Orioles rookie Zach Britton (6-6) gave up four runs and seven hits in 5 2/3 innings. The left-hander is 1-5 in his last 10 starts.
"This is a 23-year-old young man trying to establish himself in the big leagues with about half a year in Triple-A, and he's doing well," Baltimore manager Buck Showalter said. "That's the top-hitting team in the National League. It's more a case of us not doing much against Lohse and their bullpen."
Back from extended stays on the disabled list, David Freese and Nick Punto immediately made their presence felt by helping the Cardinals go up 3-0 in the second inning. Freese started the uprising with a one-out infield hit and Rasmus walked before Mark Hamilton, Punto and Ryan Theriot delivered successive two-out RBI singles.
Freese missed 51 games with a broken left hand and Punto sat out 38 games with a right forearm strain. Both were activated from the DL on Monday.
Rasmus connected in the sixth off Britton as the rain began to intensify.
After St. Louis reliever Lance Lynn struck out five in two innings, Hardy hit his 11th homer in the eighth. Markakis followed with a single and Adam Jones doubled in a run before Fernando Salas got the final five outs.
Orioles RHP Alfredo Simon (strained right hamstring) is expected to come off the 15-day disabled list Wednesday, Showalter said. ... Baltimore's Derrek Lee hit a second-inning single and now has 1,899 career hits. ... St. Louis improved to 5-5 against the AL. ... Chris Carpenter, who will start for the Cardinals on Wednesday night, last faced the Orioles in 2002 with Toronto. ... Hardy's 11 homers are four more than Baltimore shortstops totaled from 2008-10. ... Luke Scott robbed Holliday of a second home run with a leaping grab at the left-field wall in the ninth inning. Scott bruised his right knee on the play.