After drawing tremendous criticism for an embarrassing display this weekend against Real Valladolid, Gerardo Martino's Barcelona put up a solid performance against Manchester City in the second leg of the Champions League.

The teams played an entertaining scoreless first half and traded a plethora of chances throughout. Barcelona eventually broke through in the second with a nice flick from Lionel Messi and scored a winner in the dying minutes thanks to a patient play from Andres Iniesta. The match provided viewers with some terrific entertainment, and some interesting insight into both sides. Here are five things we learned from the match.

1. Lionel Messi can carry Barcelona on his own

Barcelona's talisman was at his best throughout the game; a far cry from his lackluster form this weekend. He was drawing defenders to him by moving into the midfield. He managed to constantly create space for his teammates by making daring dribbles past a number of defenders into the middle of the pitch. He hit a post on a beautiful dribble into the box and eventually scored when the ball deflected into his path inside the box. He seemed to be running away from the goal but somehow managed a subtle flick that put the ball past goalie Joe Hart and gave his team the 1-0 lead. With the exception of a few players on his team who also contributed greatly, Messi singlehandedly ripped apart Manchester's defense in the second half. Other teams beware.

2. Barcelona remains vulnerable defensively

Despite an improved performance, the Catalan side still struggled to retain possession of the ball and was actually caught chasing a rather aggressive Manchester City side. The English contingent actually dominated the end of the first half and start of the second and created a plethora of scoring chances. Edin Dzeko nearly scored the first goal of the game but was thwarted by a superhuman save from Victor Valdes. At other moments, City's players simply missed gaping scoring opportunities that a more talented team like Real Madrid or Bayern Munich would likely score on.

3. Neymar looks like a huge mistake

The Brazilian created some chances, but he disappeared as the match developed. By the end of the game he was invisible and not contributing at all. At some points, he gave the ball away and made poor decisions with his runs. He simply does not fit at the moment and looks like he might be better suited for the bench.

4. Manchester City's defense is not good enough to contend with elite teams

Three of City's four defenders wound up with yellow cards and one of them, Pablo Zabaletta, was kicked out of the game with a red card. Joleon Lescott was a disaster throughout the match and was at fault for Messi's goal and the post the Argentinean hit earlier in the second half. Aleksandr Kolarov slipped and fell on a one-on-one and Neymar and gave him a free shot on goal. Vincent Kompany was the only one who had a solid night; the rest simply looked overwhelmed.

5. Joe Hart is back in form

The lone bright spot for City was the play of its goalie Joe Hart. The netminder made a number of terrific stops throughout the game to keep his team in the match. He challenged attackers on breakaways and despite being outsmarted by Andres Iniesta (who can actually outsmart the Barcelona man?), he denied Xavi and Neymar on a few major scoring chances. This bodes well for England heading into the World Cup this summer.