Villa were unable to claw back the 3-1 deficit from the first leg of the Capital One Cup encounter even though leading scorer Christian Benteke put them in front before half-time.
James Hanson's headed effort early in the second period effectively killed off the tie and Villa substitute Andreas Weimann's last-gasp goal secured a 2-1 win on the night but it was too little, too late.
The final whistle was the cue for wild scenes of delight from Bradford manager Phil Parkinson and his players who had overcome Arsenal in the previous round.
His side will now take on either Swansea or Chelsea at Wembley at the end of February.
The only other club from the bottom division to reach the final was Rochdale in 1962, when the competition was in its infancy and many of the leading sides did not participate.
For Villa it was a massive blow to take in a season where they have become embroiled in a relegation battle.
Manager Paul Lambert's ability to pick up his players following this hammer blow will be put to the severest test after the semi-final draw appeared to be an open invitation to repeat their 2010 Wembley appearance.
Villa had enough opportunities in the opening half-hour to have at least got back on level terms, with Charles N'Zogbia in inspired form and examining the Bantams defence.
But Bradford managed to survive to the interval with their aggregate lead still intact - and how Hanson made them pay for their ineptitude at defending set-pieces.
The first half-chance fell to Benteke who climbed above the Bradford defence to meet a cross from N'Zogbia but he directed his header wide.
Another menacing centre from N'Zogbia was headed back across goal by Benteke towards Matt Lowton although he could not keep his header down.
But Villa's vulnerability at set-pieces in recent weeks was again highlighted when Hanson headed wide from a Gary Jones free-kick when he should have at least hit the target.
N'Zogbia was supplying a string of dangerous balls across the Bradford box and Benteke sent another header straight at Bantams keeper Matt Duke.
Fabian Delph, who had been fortunate not to be booked for a reckless early challenge, was then only inches too high with a powerful 20-yard drive.
Duke then got his body behind a shot on the turn from Gabriel Agbonlahor.
Villa defender Ciaran Clark became the first player to be booked for a challenge on Hanson.
Then after 24 minutes Villa Park erupted as Benteke gave the home side lead.
Left-back Joe Bennett curled the ball in from the flank and Benteke was first to react as he prodded the ball past Duke.
Stephen Ireland also had the ball in the net shortly afterwards but he had strayed offside.
N'Zogbia continued to ask questions of the Bradford defence and Duke had to be alert to turn over a fierce long range effort. He also reacted sharply to tip Ireland's chip over the bar.
The game followed a similar pattern at the start of the second period with Benteke failing to make full contact on a header from Lowton's centre.
But after 55 minutes Villa's Achilles' heel at set-pieces again proved their undoing as Hanson restored Bradford's two-goal aggregate lead, the striker getting in front of Ron Vlaar to head home Jones' corner and send the 6,500 Bradford fans wild.
Lambert responded by introducing record signing Darren Bent and he set up a low chance for Ireland who stabbed the ball wide at the near post.
But Bradford substitute Gary Thompson came within inches of making a spectacular entry as his shot thumped against the bar.
Lambert brought on a fourth striker in Andreas Weimann and he put Villa ahead on the night after Benteke's flick-on, but Bradford survived the final few minutes to book their place in next month's Wembley final.