The hosts had created the better chances before Aguero's 83rd-minute strike but City's stand-in goalkeeper Costel Pantilimon pulled off more than one fantastic save to keep the scores level.
Arsenal's young winger Alex Oxlade-Chamberlain had impressed throughout but the strike-force of Marouane Chamakh and Park Ju-young looked toothless without captain Robin van Persie's presence.
City winger Adam Johnson's 25-yard effort dipped just over before Arsenal broke down the left through Oxlade-Chamberlain, who fed Chamakh before the ball was pushed out for Francis Coquelin to whip it back across the six-yard box.
Park Ju-young, who scored in the last round against Bolton, arrived on cue at the far post, only for Pantilimon to make a brilliant reaction save to his left.
The 6ft 8in City keeper was called into action again on 27 minutes when the Romanian - on a one-year loan from Poli Timisoara - made another acrobatic one-handed stop to push away Oxlade-Chamberlain's fierce 20-yard strike which was heading for the top corner.
Oxlade-Chamberlain continued to be Arsenal's main attacking threat down the right - so much that City boss Roberto Mancini made an early change on 32 minutes when he replaced Aleksandar Kolarov with Aguero and switched formation. The Serbian captain looked less than impressed as he slumped into the visitors' dugout.
Edin Dzeko glanced what was a decent chance wide, before Owen Hargreaves was replaced by Abdul Razak.
Gervinho scampered away down the right and his low centre was knocked behind away from Yossi Benayoun.
City broke quickly and this time produced a finish worthy of their multi-million pound attack to win the tie with seven minutes left. Dzeko's long ball split the Arsenal defence, before Johnson brilliantly played in Aguero - and the Argentinian coolly slotted past Lukasz Fabianski.
Source: PA
Source: PA