Zlatan Ibrahimovic's goal gave Barcelona a 1-1 draw at Stuttgart in the round-of-16 match in the Champions League on Tuesday.
The champions fell behind in the 25th minute of the opening leg to Stuttgart striker Cacau's goal amid strong pressure from the hosts.
Ibrahimovic equalised in the 52nd minute, tapping in from close range after goalkeeper Jens Lehmann had saved his first attempt.
"You have to work hard, there are no easy matches at this level," Barcelona coach Pep Guardiola said. "It was tough."
Stuttgart outplayed Barcelona in the first half but the visiting team came back strongly after the break.
"They had the possession, we had the chances," Stuttgart coach Christian Gross said.
Ibrahimovic and midfielder Xavi Hernandez were included in Barcelona's starting line-up despite being in doubt due to injury.
Cacau, coming off a four-goal performance in the Bundesliga in Stuttgart's 5-1 win over FC Cologne, mistimed a shot early in the game while in a good position.
Stuttgart stepped up the pressure and Cacau soon found the target, rising over Barcelona defender Carles Puyol at the far post to head Timo Gebhart's cross into the roof of the net.
Stuttgart kept up the high tempo for Cacau to break down the left flank, but his shot was stopped by goalkeeper Victor Valdes.
Barcelona finally threatened in the 40th minute when Lionel Messi shot from 20 metres. Lehmann dived to his left to parry the shot and the ball bounced off the post back into the goalkeeper's hands.
Stuttgart pulled back somewhat in the second half and Barcelona used the space to equalise. Defender Gerard Pique headed down a long ball to Ibrahimovic, whose first attempt was blocked by Lehmann. The striker put the rebound back into the net.
"It was a very intense game," Khedira said. "We went into the match highly motivated, playing against probably the best team in the world. We had the better chances in the first half but then we conceded the goal too early in the second."
Khedira had a shot that went wide in the 63rd. Ibrahimovic then nearly put Barcelona ahead after Lehmann fumbled a corner delivered by Xavi, but Cristian Molinaro cleared on the line with his shoulder.
Valdes then made a risky diving save to deny Ciprian Marica, who had come on for Pogrebnyak.
"It's a pity; we could have beaten Barcelona today," Lehmann said.
The second leg is on St Patrick's Day.