Barcelona eased into the Champions League quarterfinals for the seventh straight year, shaking off a slump that has dropped it to third place in the La Liga standings.

Lionel Messi and Dani Alves scored second-half goals in a 2-1 win over Manchester City on Wednesday night that completed a 4-1 aggregate victory.

"We had some pretty big setbacks, especially in the way we were playing — but today we got back to playing the way we know, the Barca people love," Messi said. "Even though the goal came in the second half, I don't think we were ever in danger of an upset."

In addition to on-field troubles, Barcelona has been dealing with a tax fraud case involving its acquisition of Neymar last summer, and the resignation of team president Sandro Rosell. The match drew 85,957 to Camp Nou, Europe's highest-capacity stadium, but about 14,000 short of a sellout.

In the night's other game, Paris Saint-Germain gave up an early goal and rallied past visiting Bayer Leverkusen 2-1 for a 6-1 aggregate win.

Barcelona dominated with 56 per cent possession and a 16-9 advantage in shots, and could have gone in front early. French referee Stephane Lannoy didn't award a penalty kick when Messi went over Joleon Lescott's leg in the eighth, and Neymar's tap-in of Jordi Alba's pass in the 18th was called off for offside in what appeared on replay to be an officiating error.

Cesc Fabregas' pass bobbled through the legs of defender Joleon Lescott in the 67th minute, and Messi ran onto the ball and flicked it over goalkeeper Joe Hart. Messi has eight goals in five Champions League matches this season and 67 overall in Europe's top club competition, four shy of Raul Gonzalez's record.

Zabaleta ejected

City, in the knockout stage for the first time, played a man short after Pablo Zabaleta received his second yellow card in the 78th. The card was given for protesting after Gerard Pique barged into Edin Dzeko inside the area without a penalty kick being award. City defender Martin Demichelis had been ejected in the first leg last month.

"Going for a second time down to 10 men after it was a clear penalty, it's not easy conditions to come and play against a strong team," City captain Vincent Kompany said. "Over the course of two games, whenever there was 11 players, there wasn't much between the two teams."

Kompany scored for City in the 89th from what appeared to be an offside position. Dani Alves scored for Barcelona in the first minute of stoppage time, adding to his goal in the first leg.

In Paris, Sidney Sam scored for Leverkusen in the sixth minute, but Marquinhos tied it in the 13th and Ezequiel Lavezzi got a go-ahead goal in the 53rd.

PSG goalkeeper Salvatore Sirigu saved Simon Rolfe's penalty kick in the 28th after Christophe Jallet tugged Eren Derdiyok's jersey as he ran into the penalty area, earning a yellow card. Leverkusen's Emre Can was ejected in the 68th for his second yellow card.

PSG coach Laurent Blanc, who rested several regulars, felt his team eased up after the opening leg.

"It's all well and good saying to the players forget the first game, but it's true that subconsciously you tell yourself you've got a bit of a cushion," Blanc said. "But there were players out there who don't play that much, and you have to show your best level. The Champions League is a level above, and I was expecting more from my team."