Lionel Messi and Daniel Alves punished ten-man Manchester City in the first leg of the Champions League last-16 tie at the Etihad Stadium.
Scorers: Barcelona - Messi (54 pen), Dani Alves (90)
Four-time World Player of the Year Messi struck from the penalty spot with 54 minutes gone after being brought down by Martin Demichelis, who was sent off.
City had their chances but Barcelona dominated possession throughout and were rewarded when Alves struck the second in the last minute.
City had set up well in an attempt to soak up Barcelona pressure and catch them on the break but the task proved beyond them after Messi punished a mistake early in the second half.
The Argentine raced away and, although replays suggested contact by Demichelis may have been just outside the box, a straight red card was brandished and the penalty awarded.
The hosts kept on pressing but they failed to make the most of their opportunities and they were picked off again as time ran out.
Barcelona coach Gerard Martino had said the key to victory was possession and so it proved, as the visitors controlled the ball for long spells.
Yet City appeared to have been expecting that having packed midfield.
Fernandinho’s return from injury allowed City manager Manuel Pellegrini to deploy five across the middle with Alvaro Negredo operating as a lone striker. After 14 minutes largely on the back foot, but with Barca yet to create a clear-cut chance, Vincent Kompany picked out Negredo with a long ball. The forward controlled well on the edge of the box but Javier Mascherano managed to scramble away.
Negredo caused more trouble in the box after Jesus Navas crossed from the right but Swedish referee Jonas Eriksson penalised him for a foul on goalkeeper Victor Valdes.
Barca had another scare as Valdes was beaten in the air by Kompany at a corner but he scrambled back to gather on the line. Negredo had another chance from outside the area but shot straight at Valdes.
All these chances punctuated spells of prolonged Barca possession and the Catalans eventually pierced the back line of Kompany and Demichelis. Cesc Fabregas played in Andres Iniesta only for Yaya Toure to get back and Messi linked well with Xavi and Iniesta before shooting over.
Joe Hart saved well from a strong Xavi shot and Kompany bundled Messi over. Negredo had another chance to open the scoring before half-time but glanced a header wide from Navas’ cross.
City were to regret those missed chances as Barcelona upped the tempo for the second half. Messi certainly appeared to move up the gears and did well to release Fabregas down the left.
That attack came to nothing but Messi was clearly in the mood and had the hosts, and particularly, Demichelis in trouble as he burst through on goal.
Demichelis could not keep pace and slid in in a desperate attempt to tackle, but succeeded only in tripping his fellow Argentinian. Contact appeared to be just outside the area but Eriksson pointed to the spot and gave Demichelis his marching orders.
Messi calmly stroked home the penalty down the centre as Hart dived to left.
Pellegrini sent on Joleon Lescott in an attempt to reinforce the defence but recognised damage limitation was not an option and also introduced Samir Nasri. He was soon in the action and had a shot blocked from a Negredo lay-off.
Barca could have taken even greater command of the tie as Xavi shot over and Alves fired across goal.
City broke again but Gael Clichy wasted an opening and a well-struck Silva volley was clutched by Valdes.
The hosts, however, may have had a stroke of luck as Gerard Pique had a late goal ruled out for a marginal offside.
Edin Dzeko had a late chance for City but was harshly penalised for a foul.
There was no reprieve for City in the final minute as Alves got behind the defence and fired past Hart.
Man City: Hart, Zabaleta, Kompany, Demichelis, Clichy, Jesus Navas (Nasri 57), Fernandinho, Toure, Kolarov (Lescott 57), Silva, Negredo (Dzeko 74). Subs not used: Pantilimon, Richards, Javi Garcia, Jovetic.
Barcelona: Valdes, Dani Alves, Pique, Mascherano, Jordi Alba, Xavi, Busquets,Fabregas (Sergi Roberto 86), Alexis (Neymar 73), Messi, Iniesta. Subs not used: Pinto, Pedro, Bartra, Song, Adriano.