Messi came off the bench following a groin injury to score in the 4-0 weekend win over Deportivo La Coruna and he netted a 17th-minute opener at Camp Nou on Wednesday.
City boss Pep Guardiola was back at the ground with which he will for ever be inextricably linked and his team posed plenty of questions either side of Barcelona going in front, until a mindless red card for Claudio Bravo resulted in the game racing away from them.
In the 53rd minute, the former Barcelona goalkeeper – whose arrival at Guardiola’s behest prompted Joe Hart’s Torino loan exile – handled Luis Suarez’s shot having failed to clear danger outside his area.
It was the fourth time in five Champions League defeats to Barcelona that City found themselves operating with reduced numbers and a little over a quarter of an hour later, Messi made the matchball his own.
A pair of rash challenges from Barcelona substitute Jeremy Mathieu meant the closing stages were a 10-a-side affair, but the LaLiga champions were already safely established five points above City at the Group C summit and could even absorb a late Neymar penalty miss, for which the Brazilian compensated by adding the fourth.
Sergio Aguero being stationed on the visitors’ bench hogged the immediate pre-match attention, but Luis Enrique had to delve into his subs early on when Jordi Alba limped off to be replaced by Lucas Digne.
The Spain left-back was second best defending a pair of Raheem Sterling runs early on before a likely tormentor was on hand to puncture the visitors’ promising start.
Helped to hustle possession away from Aleksandar Kolarov, Messi capitalised on a slip from Fernandinho to shimmy past Bravo and slot home.
City continued to press Barcelona deep in their own territory, but were almost undone by a long ball from centre-back Samuel Umtiti – Bravo scampering out to deny Neymar – before Ivan Rakitic headed over when unmarked on the end of a Messi free-kick.
David Silva, whose robust tackle meant Gerard Pique was the second Barcelona defender to withdraw through injury, played in Nolito to force a 37th-minute save from Marc-Andre ter Stegen.
The Germany goalkeeper then excelled himself with a plunging stop to thwart compatriot Ilkay Gundogan,although he was rooted to the spot when John Stones powered wide from Silva’s set-piece delivery.
There was still time for Barcelona to offer a reminder of their attacking threat in first-half stoppage time, with Suarez spinning past Stones and forcing Bravo to turn behind at the second attempt.
Kevin De Bruyne twice broke encouragingly down the Barcelona left after the restart, but a familiar theme of City’s previous encounters with the Barcelona re-emerged.
Bravo’s downfall was all of his own making, as Suarez read his foray towards midfield and made him pay dearly.
To compound Guardiola’s problems, captain Pablo Zabaleta suffered a bloodied foot in a challenge with Digne in the build-up to the red card incident and, although Messi lifted the resulting free-kick over, he soon made the numerical advantage count by clipping an unerring low shot past replacement Willy Caballero from the edge of the area.
Another City error in the 69th minute error made it 3-0 as the otherwise impressive Gundogan passed absent-mindedly back towards his own goal, allowing Suarez to dash past Stones and lay a simple finish on a plate for Messi.
Two fouls in three minutes on the still-lively Sterling saw Mathieu join Bravo in the changing rooms, while Caballero perhaps stated a case to be preferred to his haphazard colleague by guessing correctly to keep out Neymar’s penalty after Kolarov hacked down Messi.
The Brazil star would not be denied as he danced through a weary City backline to complete the scoring and a humiliating evening for Guardiola, who is now winless in four matches.
FEATURED IMAGE CAPTION: Barcelona’s Luis Suarez, Neymar and Lionel Messi, from left to right, wait to take a free kick during a Champions League, Group C match against Manchester City, at the Camp Nou Stadium in Barcelona on Wednesday, October 19, 2016.