CINCINNATI -- Carlos Zambrano was prepared to do everything he could to earn his 100th career victory.
Zambrano pitched into the seventh inning, hit a key home run and added a couple of heads-up defensive plays for good measure to lead the Chicago Cubs to a 2-1 win over the Cincinnati Reds on Friday night.
"I felt good," said Zambrano, who didn't allow a hit until Adam Rosales lined a single to left with one out in the fifth inning. "Thank God we won the game. I'm happy about the 100th win. It makes me proud, but the most important thing is we won. After my last start, I felt bad about what happened."
Zambrano gave up two hits and a season-high five walks in 6 2/3 innings. He struck out seven while reaching the milestone in his third try since beating Florida on May 3 for win No. 99. Since then, he spent 19 days on the disabled list with a left hamstring strain, lost at San Diego and was suspended six games for an altercation with plate umpire Mark Carlson on May 27 in Chicago.
His return was delayed one more day by rain that washed out his scheduled start Thursday in Atlanta, but he shrugged off the interruption.
"Zambrano pitched really, really well -- really well," Cubs manager Lou Piniella said. "He got a little tired at the end."
The Cubs pushed across a run in the first on Ryan Theriot's one-out infield hit and three walks Theriot finished with two hits after opening Chicago's road trip 1-for-10.
Zambrano (4-2), who struck out the side in the first, hit his second homer of the season and 18th of his career on Micah Owings' first pitch of the fifth inning, extending the Cubs' lead to 2-0. The switch-hitter smacked the homer from the right side after striking out left-handed in his first at-bat.
"I have a little discomfort in my left hand," Zambrano said. "It's nothing serious. In the National League, you have to do both. I have a decent swing right-handed and left-handed. That turned out to be the difference. I'm happy about that."
After allowing his first hit in the bottom of the fifth, the right-hander struck out Owings before right fielder Micah Hoffpauir made a tumbling catch of Jerry Hairston Jr.'s drive to the warning track to end the inning.
Zambrano also helped his cause with some alert defense. He covered first base on Brandon Phillips' foul pop near the first base stands in the sixth inning. First baseman Derrek Lee caught the ball and threw to Zambrano to double Chris Dickerson off of first.
"That was vintage Zambrano right there: high velocity, a lot of movement, good sinker," Reds manager Dusty Baker said. "He's a great athlete and a good hitter. I don't think I've ever seen a guy cross over like that and hit a home run, and that ended up being the game-winner."
In the seventh, with Jay Bruce on first and one out, Zambrano made a juggling catch of Alex Gonzalez's line drive up the middle. Zambrano was replaced by right-hander Angel Guzman after walking the next batter.
"He was his normal self," Phillips said. "His cutter was working. He did his job. We didn't. We started to get to him late in the game. They took him out at the right time."
Owings (3-7) left after allowing five hits and two runs with three walks and a season high-tying six strikeouts in six innings.
Phillips broke up the shutout with a one-out RBI triple off of reliever Carlos Marmol in the eighth, snapping Cincinnati's streak of consecutive scoreless innings at 16. Marmol recovered to get Laynce Nix to pop up. Ramon Hernandez walked, but Bruce grounded out to strand Phillips at third with the potential tying run.
The Reds got another potential tying run to third base with two outs in the ninth. Wilkin Castillo, pinch-running for Ryan Hanigan, went from first to third when closer Kevin Gregg threw a wild pitch on a strikeout of Hairston, but Dickerson popped out to third baseman Mike Fontenot to give Gregg his 10th save in 12 opportunities.