Watford raced into an early lead through Troy Deeney but were pegged back by James Hanson's strike as the Bantams proved more than a match for their hosts in the opening stages.
But Marvin Sordell's 10th goal of the campaign sent Sean Dyche's men in with the half-time advantage before Forsyth's double secured their place in the fourth round, despite Nahki Wells' late consolation.
Deeney handed the Hornets the perfect start with a goal inside the opening three minutes. Sordell crossed from the left and Deeney nipped ahead of his marker to head home from just inside the six yard box.
Phil Parkinson's side were level moments later when Carl Dickinson's block from Ricky Ravenhill's shot fell for Hanson, who powered into the net from close range for his 10th of the season.
After an action-packed opening 10 minutes the game slowed down considerably but Hanson continued to make his imposing presence felt, winning numerous flick-ons while Deeney and Sordell struggled to get any change out of Luke Oliver and Andrew Davies.
Jon McLaughlin was forced in to action in the City goal after 35 minutes when Sordell found Deeney in space but his strike was beaten away by the Scot.
That was a warning shot from the home side, who then delivered a decisive blow five minutes before the interval.
The Bradford defence lost their shape in the face of a determined run from Mark Yeates', allowing the midfielder to pick out Sordell who twisted and turned in the box before finding the bottom corner.
Dyche's side had a renewed tempo about them early in the second half and Scott Eustace's superb ball over the top found Yeates, who delivered for Forsyth but the midfielder directed his header wide.
The Bantams responded with purpose as Wells showed Sunderland loanee Nyron Nosworthy a clean pair of heels before firing in a cross for Hanson which Jonathan Hogg managed to smuggle clear under pressure.
But the game was put beyond their reach when Forsyth scored twice in three minutes. The first was a simple task for the midfielder, who turned home Yeates' miskick from close range.
The second was a moment of genuine quality as the 22-year-old capped a swift counter-attack with a stunning 25-yard drive.
The hosts, thinking the job was done, then sat back and allowed Bradford to mount some late pressure, which eventually paid off when Wells prodded in from Charlie Taylor's cross.
A remarkable comeback looked on the cards when substitute Ross Hannah appeared to reduce the deficit further with a header, but the offside flag was up.