Bayern Munich had been the only side to stop City winning at home this season, but the Hornets defied the odds to take the lead through Fernando Forestieri after 21 minutes.
The chances of a major shock increased when Troy Deeney made it 2-0 on the half-hour mark, but City came storming back after the interval to book their place in the fifth round.
Aguero reduced their arrears after an hour and then equalised in the 79th minute, before Aleksandar Kolarov smashed in from long range with three minutes remaining.
Watford’s hopes of at least coming back to earn a replay were then dashed as Aguero completed his treble in the dying seconds.
City’s bench alone cost £84million but it was Watford who looked the more composed team before the break.
City were lethargic and if there was any complacency on their part it was ruthlessly exposed.
Deeney gave an early warning of intent with a shot that flew over before Forestieri hit a free-kick into the wall and Cristian Battocchio was wayward from the rebound.
Ikechi Anya got behind the defence but collided with goalkeeper Costel Pantilimon trying to reach a bouncing ball.
City did respond with Micah Richards winning a free-kick on the edge of the area but that came to little and Joleon Lescott spurned a gilt-edged chance from five yards after a corner.
City were almost caught out by a swift counter-attack as Forestieri played in Deeney but his ball was too strong.
But Manuel Pellegrini’s side failed to heed the warnings and Forestieri raced past Martin Demichelis from a brilliant flick by Deeney and clinically drove home the opener.
City tried to respond but they lacked a killer touch as Jack Rodwell – making only his fourth start of the season – Jesus Navas and Aguero all shot weakly at Jonathan Bond.
It was unconvincing from City and Forestieri shot wide before a poor clearance by Demichelis led to Watford’s second after half an hour.
Sean Murray and Anya were both involved as the ball was quickly returned towards City’s goal and Deeney finished calmly after going through one-on-one with Pantilimon.
The home fans were stunned and Pellegrini, recognising that his defence was struggling, sent out Vincent Kompany and Pablo Zabaleta to warm up.
Both were sent on at half-time as City attempted a salvage operation, with Rodwell and Richards making way and the shaky Demichelis pushed into midfield.
City’s superiority became evident as they began to make the running but Watford hung in doggedly.
Utilising Navas out wide, City pieced together a good move but Edin Dzeko scuffed his shot.
Pellegrini sent on Stevan Jovetic to join Aguero and Dzeko up front and his first contribution was to head a good chance wide.
But City had the momentum and they pulled one back on the hour as Dzeko slid onto a dangerous ball from Kolarov on the left.
Bond reacted well to deny the Bosnian but Aguero snapped up the rebound to score for a 23rd time this season.
Watford tried to push forward when they could but thereafter at largely became a question of their resilience.
They managed to repel more attacks as Dzeko, Jovetic and Aguero all combined to good effect.
Yet City could come at them from all angles and Navas, who had seen plenty of possession but little joy in the first half, had them backtracking.
He charged down the right and found Aguero, who once again did the rest with a weaving run and marvellous clipped shot into the top corner.
It then became a matter of whether Watford could hold on and they were broken three minutes from time as Bond allowed a Kolarov shot to squirm through his grasp.
Aguero added gloss to the scoreline in the dying moments as City survived a major scare.