Windass rifled in a superb 15-yard right-foot volley seven minutes before the break at Wembley, having been set up by good work by on-loan striker Fraizer Campbell.
The Robins had been forced to draft in Liam Fontaine at centre-half for Jamie McCombe, who was suffering with a stomach bug, while the Tigers looked to veteran hometown duo Nick Barmby and Windass for inspiration.
Just five minutes in Robins striker Dele Adebola was played in by a ball over the top, but he could not find the power to beat Boaz Myhill from close range.
That proved to be the only opening of a disappointing first half, until Windass broke the deadlock with a goal worthy of winning any game.
The Robins were also forced into a change just before the interval, when Bradley Orr had to be stretchered off after an earlier clash of heads with Barmby.
Bristol City started the second period in more positive fashion, but long-range free-kicks from David Noble and Michael McIndoe were the closest they came to finding an equaliser.
Lee Trundle almost conjured an opening with 17 minutes left and he thought he had rescued the game five minutes from time.
The striker was on hand after Boaz Myhill had flapped at a high ball into the area, but Michael Turner made a matchwinning block from close range.
With time running out Sam Ricketts made another crucial interception near his own line as the Tigers held on to send their fans into delirium at the final whistle.