Luiz Felipe Scolari's side demonstrated exactly what Robinho might have missed out on by snubbing Chelsea for City, showing that they are in a different class to a side still under reconstruction by boss Mark Hughes.
But the sending off of Terry cast a real cloud over the win, ruling him out of next Sunday's game with Manchester United at Stamford Bridge.
Robinho was swift to demonstrate why he was at the centre of a bidding war between these two clubs when he gave City an early lead.
City were awarded a free-kick when Carvalho clipped Jo, and Robinho sent Eastlands wild with a clipped free-kick from 20 yards that beat Petr Cech via a deflection off Jon Obi Mikel.
Please turn on JavaScript. Media requires JavaScript to play.
Interview: Manchester City boss Mark Hughes
Chelsea's response was emphatic as they drew level inside three minutes to silence the City celebrations.
Lampard's corner was met by Terry's header, and when a rebound off Joe Cole fell kindly for Carvalho, he lashed an unstoppable finish past Joe Hart.
Chelsea were then in the ascendancy, with Florent Malouda heading Joe Cole's cross against the bar and Hart saving well from Anelka after a dreadful clearance from Pablo Zabaleta.
City had moments of their own, with striker Jo seeing a shot deflected wide and Stephen Ireland shooting just over - but Chelsea were looking very impressive.
Please turn on JavaScript. Media requires JavaScript to play.
Interview: Chelsea boss Luiz Felipe Scolari
It was no surprise when they took the lead after 53 minutes as the outstanding Lampard capped a wonderful flowing move with a left-foot finish that flew low beyond Hart into the bottom corrner.
Carvalho - a goal hero at one end - then made a brilliant tackle to stop Ireland before Anelka effectively wrapped up with win after 69 minutes.
Joe Cole showed great guile to slide in a perfect pass behind City's defence and Anelka swooped to slip a cool finish beyond Hart.
Chelsea's smooth progress towards victory was interrupted when Terry received the first straight red card of his career with 13 minutes left.
He was guilty of a cynical foul on Jo, but the City striker still had a long way to go to goal and Carvalho was in close attendance, making it a contentious call by referee Mark Halsey.
City showed plenty of spirit, but it was Chelsea who had the class and fully deserved the victory.
Manchester City manager Mark Hughes: "Chelsea were excellent in the second half. They set traps for you.
"In the end, it was a fair result, we have no qualms about that.
"As soon as you go behind against Chelsea, it is very difficult."
Chelsea manager Luiz Felipe Scolari: "You have to congratulate my players because they fought and tried to win the game until the last minute.
"We had five or six chances to score and got three goals.
"It was important to score soon after going behind because it recovered our confidence.
"When we conceded I saw discussions between my players but it was different as soon as we scored."
Man City: Hart, Zabaleta, Richards, Dunne, Michael Ball (Sturridge 84), Wright-Phillips, Hamann (Gelson 61), Kompany, Ireland, Robinho, Jo. Subs Not Used: Schmeichel, Elano, Garrido, Evans, Ben-Haim.
Bookmark with:
What are these?