Watford's Etienne Capoue gjorde tidigt i andra halvan, men Freddie Hinds och Bobby Reid svarade för City.
Hornets försvarare Jose Holebas skickades iväg i 88:e minuten innan Niclas Eliasson ökade besökarnas ledning i stopptid.
Adrian Mariappa fick en 95-minuters tröst när Watford föll till sitt första nederlag under chefen Marco Silva.
Portugiserna gjorde sex ändringar på sin sida efter deras liga vinna över Bournemouth på lördag, medan City manager Lee Johnson gjorde nio.
Watford-sidan var fortfarande stark med sommarsigneringen Will Hughes gav sin debut och Troy Deeney gjorde sin första start för säsongen.
Efter att ha hamnat på efterkälken reagerade staden utmärkt genom 18-åriga Hinds fantastiska strejk på avstånd och Reids mål åtta minuter senare.
Brasiliansk Richarlison slog ett inlägg för Watford innan Holebas fick ett andra gult kort för en resa på Eliasson.
Eliasson neted en utbrytning mål att sätta spelet bortom Watford.
Matchen slutar, Watford 2, Bristol City 3.
Andra halvlek, Watford 2, Bristol City 3.
Mål!  Watford 2, Bristol City 3. Adrian Mariappa (Watford) huvud från mycket nära håll till nedre högra hörnet. Hjälpt av Christian Kabasele med ett huvudkort efter en viss situation.
Richarlison (Watford) vinner en frispark på högerkanten.
Foul av Lloyd Kelly (Bristol City).
Mål!  Watford 1, Bristol City 3. Niclas Eliasson (Bristol City) vänster fotade skott från mitten av lådan till nedre vänstra hörnet. Hjälpt av Callum O'Dowda.
Hörnet, Watford. Förföljd av Niclas Eliasson.
Adrian Mariappa (Watford) vinner en frispark i den defensiva halvan.
Foul av Callum O'Dowda (Bristol City).
Foul av Tom Cleverley (Watford).
Callum O'Dowda (Bristol City) vinner en frispark på vänsterflygeln.
Försöket räddades. Callum O'Dowda (Bristol City) höger fotade skott från mitten av lådan sparas i mitten av målet. Hjälpt av Matty Taylor med ett kors.
Andra gula kortet till José Holebas (Watford) för en dålig foul.
Foul av José Holebas (Watford).
Bobby Reid (Bristol City) vinner en frispark i den defensiva halvan.
Hörnet, Watford. Sammankallad av Aden Flint.
Richarlison (Watford) vinner en frispark i den defensiva halvan.
Foul av Lloyd Kelly (Bristol City).
Försök missade. Richarlison (Watford) header från höger sida av lådan är hög och bred till höger. Hjälpt av Isaac Success med ett kors.
Foul av José Holebas (Watford).
Niclas Eliasson (Bristol City) vinner en frispark på högerkanten.
Foul av Isaac Framgång (Watford).
Korey Smith (Bristol City) vinner en frispark i defensiva halvan.
Försening över. De är redo att fortsätta.
Försening i match Lloyd Kelly (Bristol City) på grund av en skada.
Foul av Adrian Mariappa (Watford).
Callum O'Dowda (Bristol City) vinner en frispark i defensiva halvan.
Ersättning, Watford. Tom Cleverley ersätter Etienne Capoue.
Substitution, Bristol City. Matty Taylor ersätter Freddy Hinds.
Foul av Sebastian Prödl (Watford).
Aden Flint (Bristol City) vinner en frispark i defensiva halvan.
Hörnet, Watford. Förföljd av Frank Fielding.
Försöket räddades. Andre Gray (Watford) höger fotad skott från mitten av lådan sparas i mitten av målet. Hjälpt av Troy Deeney.
Hörnet, Bristol City. Sammankallad av Ben Watson.
Hörnet, Bristol City. Förföljd av José Holebas.
Försöket räddades. Callum O'Dowda (Bristol City) vänster fotade skott från utsidan boxen sparas i mitten av målet. Assisterad av Hördur Bjorgvin Magnusson med huvudkort.
Ersättning, Watford. Andre Gray ersätter Will Hughes.
Richarlison (Watford) träffar rätt inlägg med en rubrik från höger sida av rutan. Hjälpt av Isaac Framgång.
Foul av Troy Deeney (Watford).
Aden Flint (Bristol City) vinner en frispark i defensiva halvan.
Championship sida Bristol City kom bakifrån för att slå Premier League Watford i EFL Cup andra omgången.