Dominant City went ahead after just three minutes when Silva volleyed in, and in a match of many chances Aguero fired in the clincher for his 24th of the season.
The Blues now go into the hat for Monday night’s semi-final draw, and will jet out for Wednesday’s Champions League last-16 second leg clash at Monaco in great spirits.
What happened
City, who made five changes to the starting line-up, flew at Boro and were ahead after just three minutes. Pablo Zabaleta sprung the hosts’ defence and Yaya Toure found him with a perfectly floated ball.
The Argentinian’s volleyed cross evaded Raheem Sterling but ‘El Mago’ Silva struck from close range to provide some early FA Cup magic for the Blues.
The game was open, with Toure, Silva and Kevin De Bruyne finding space to pick up and dictate possession in midfield.
One superb slide-rule ball from Belgian De Bruyne sent the irrepressible Leroy Sane striding down the left flank, but his cross rolled harmlessly across the face of goal.
Boro roused themselves midway through the half and had chances through Marten De Roon and Rudy Gestede – a combination of Claudio Bravo and Zabaleta denying the latter’s goal-bound header.
That proved to be Gestede’s last contribution as he went off injured, to be replaced by former City man Alvaro Negredo.
City were soon back on the offensive and the usual suspects were carrying the threat.
Silva, Sterling and Sane all raided the Boro byline, but each time the crosses went unconverted. There was still time for one more good chance before half time as Toure flashed a header wide from De Bruyne’s whipped free-kick.
The start of the second half was almost a carbon copy of the first, the differences being De Bruyne crossed the ball and this time Silva blasted over with his right foot.
Moments later an incredible save from Guzan denied Aguero a goal after Sterling had again breached the Boro defence to cross, with the outstretched leg of the keeper diverting the striker’s shot onto the post.
Guzan was off his line quickly to smother a chance for Sane just after the hour mark as City looked to kill the game off, while the American made two more excellent saves from Silva and Sane.
But after 66 minutes, City finally broke Boro’s resistance. Jet-heeled Germany ace Sane sent an inviting cross fizzing towards the six-yard box and Aguero timed his run and finish to perfection for his sixth goal in four games.
Bravo then saved well from Boro substitute Gaston Ramirez before City had the ball in the net, only for Sterling’s opportunist effort to be ruled out for offside.
A fine goal-line clearance from John Stones helped to preserve City’s third consecutive clean sheet, and it was job done at the Riverside.
Key moment – Aguero’s goal
The spectre of City’s painful 1-1 Premier League draw was beginning to loom with City so dominant but just one goal up. Aguero, who was in electric form all afternoon, finished superbly to banish those fears.
Matchday App man of the match – David Silva
Given this much space to play in, Silva is almost certain to do damage, and he duly did. Silva has now been involved in five FA Cup goals in his last five appearances – two goals and three assists.
What it means
City go into the hat for the semi-final draw for the first time in four years. The draw takes place after the Chelsea v Manchester United game on Monday night.
What next?
City travel to Monaco for the Champions League last 16 second-leg tie on Wednesday (7.45pm), before the Premier League home clash with Liverpool at the Etihad Stadium on Sunday (4.30pm).