Edin Dzeko scored the 100th goal of a prolific season for Manuel Pellegrini's men before Jesus Navas, Yaya Toure and Sergio Aguero netted to seal another three points.
Edin Dzeko's 14th-minute opener ensured City reached the century in 34 games across all competitions – quicker than any English team in the Premier League era.
Cardiff refused to lie down, with Craig Noone a constant menace and unfortunate not to add to his 29th-minute equalizer.
Yet Jesus Navas quickly restored the City's advantage before Yaya Toure and Sergio Aguero added a slightly flattering late gloss to the score line.
Cardiff grabbed a second in injury time as Fraizer Campbell scored from a corner, as he had done twice against City in August's reverse meeting.
City talisman Aguero started on the bench once more following his goalscoring return from a calf injury versus Blackburn Rovers in midweek, while Aron Gunnarsson - a goalscorer in Cardiff’s 3-2 win over Manuel Pellegrini's men earlier in the season - was included in one of four changes made by Ole Gunnar Solskjaer.
The home side might have brought its century up within the first minute when Kevin McNaughton clumsily bundled through Dzeko as the Bosnia striker looked to convert David Silva’s left-wing cross. Navas prodded the loose ball wide.
Cardiff goalkeeper David Marshall appeared primed for a busy afternoon as he beat a Dzeko shot away before reacting well as recalled center back Ben Turner almost put Navas' center into his own net.
Given the swashbuckling nature of City's attacking play this season, it was perhaps inevitable the 100th goal would arrive in scruffy fashion.
Silva controlled Aleksandar Kolarov's throw-in amid suspicions of handball and spun his way into the Cardiff box to tee up Dzeko, whose badly scuffed effort crept inside the far post. McNaughton hacked clear but the goal-line technology system confirmed City had taken the lead.
With Pellegrini's side having clicked ominously into gear, Cardiff stunned the Etihad with a superb 29th-minute equalizer. Gunnarsson deftly touched Kevin Theophile-Catherine's pass into the path of Noone, who skipped effortlessly beyond Vincent Kompany to produce an assured low finish.
Cardiff enjoyed parity for little more than three minutes as Dzeko collected Toure's sumptuous through ball and evaded the attentions of Turner and Steven Caulker for the on-rushing Navas to side-foot home.
Joe Hart was forced to beat away a deflected 50th-minute drive from Jordon Mutch and Cardiff’s enterprising start to the second half continued as Pablo Zabaleta was forced into a last-ditch header to deny Campbell.
Silva should have extended the home team’s lead following an exquisite one-touch layoff from Dzeko, but Pellegrini had seen enough with an hour played to bring Aguero on for Alvaro Negredo – the striker suffering an untypically frustrating afternoon in front of goal that might have been compounded when he escaped with a yellow card after an ugly first-half lunge on Gunnarsson.
Still Cardiff pressed, and Noone once again left Kompany in his wake to draw a fingertip save from Hart.
Aguero's introduction was ultimately decisive as he exchanged passes with Toure, who smashed in left-footed to conclude a trademark storming run from deep, and the roles were reversed for the Argentina international to plant his 22nd of the campaign into the top corner.
Campbell's late strike proved nothing more than a consolation.