Taking a merited first-half lead through 20-year-old summer signing Naomi Layzell, Gareth Taylor's side were under the cosh for the majority of the second period, but they defended with sheer resilience and increased their cushion through Bunny Shaw.
Hoping to avoid sharing the same fate as Women's Super League rivals Arsenal - who had been dismantled 5-2 earlier in the evening by Bayern Munich - Man City asked several questions of an unusually disjointed Barcelona side.
The holders were not without their moments in City's defensive third, where goalkeeper Ayaka Yamashita did not inspire much confidence, but it was the Barcelona goal that was peppered with shots instead.
The hosts' pressure deservedly paid off when Naomi Layzell poked in from a corner after Barcelona goalkeeper Catalina Coll missed the delivery, allowing Vivianne Miedema to head the ball back into the corridor of uncertainty, where Layzell reacted quickest.
What followed was an onslaught from a rejuvenated Barcelona in the second 45 minutes, as City found themselves camped inside their own half, but a killer final touch was eluding the Spanish quadruple winners.
Having defended valiantly for so long, City caught Barcelona cold as Shaw skipped past Coll and doubled the hosts' advantage on a magical Manchester evening, albeit one that was slightly dampened by a late injury to player of the match Layzell.
City's statement victory leaves them second in Group D behind Hammarby, who overcame St Polten 2-0 on Wednesday evening, while Barcelona sit third as they look to rectify their false start in seven days' time.
MAN CITY VS. BARCELONA HIGHLIGHTS
Naomi Layzell goal vs. Barcelona (36th min, Man City 1-0 Barcelona)
Taylor's side lead the defending European champions, and not a soul can say that they do not deserve it!
The hosts win a corner after Coll's acrobatic stop from Jess Park, but the Barcelona goalkeeper does not cover herself in glory here, trying to punch the resulting corner away but getting it all wrong and leaving her goal exposed.
Instead, Miedema heads a deep delivery back into the six-yard box, where Layzell just gets in ahead of a Barcelona foot to finish low on the stretch!
Bunny Shaw goal vs. Barcelona (77th min, Man City 2-0 Barcelona)
Anybody remember Arsenal's smash-and-grab 2-0 win over Manchester City in the 2020 men's FA Cup semi-finals? The Citizens look as if they will be on the right end of such a result this time!
Taylor's side have barely ventured out of their own half in the second 45, but Shaw beats the offside trap and fends off a slide challenge from Patricia Guijarro to find herself one-on-one with Coll.
Shaw just about manages to take it round the goalkeeper before letting fly with an admittedly weak attempt, but one that rolls into the empty net regardless, as Ona Batlle slides to try to block the shot but slides too far.
PLAYER OF THE MATCH - NAOMI LAYZELL
As far as Champions League debuts go, they surely do not get any better than a goal and assist against the reigning champions, and 20-year-old right-back Layzell could hardly have dreamt of a better European baptism before a late injury.
The former Bristol City defender reacted quickest to poke in the opener before playing a perfectly-timed curved pass through for Shaw, although her performance was a tiny bit overshadowed by her injury-time withdrawal, as she dropped to the turf in agony with nobody around her after appearing to jar her ankle.
A mention must also go to centre-back Laia Aleixandri, who put in a brilliant goal-saving clearance in the first half and was a defensive rock all night long.
MAN CITY VS. BARCELONA MATCH STATS
Possession: Man City 41%-59% Barcelona
Shots: Man City 13-17 Barcelona
Shots on target: Man City 4-6 Barcelona
Corners: Man City 4-7 Barcelona
Fouls: Man City 11-3 Barcelona
BEST STATS
WHAT NEXT?
Both teams will be back in Champions League action a week from now, as Man City travel to Austria to face St. Polten next Wednesday, while Barcelona host Hammarby at the Johan Cruyff Stadium.
In the meantime, Taylor's side have a Women's Super League clash against Liverpool this Sunday to prepare for, while the European champions host Espanyol on October 13.