Championship side QPR dumped Aston Villa out of the Carling Cup thanks to Damion Stewart's second-half header.
Daniel Parejo - on loan from Real Madrid - floated the ball in on 58 minutes, leaving Stewart to nod in.
Gareth Barry was given captain duties and despite the efforts of Ashley Young, Villa struggled to dominate.
Gabriel Agbonlahor and Wayne Routledge were sent on with 23 minutes left, but QPR held on for a famous victory and a place in the fourth round.
Following their win over West Brom at the weekend, Villa boss Martin O'Neill rested six of his players and although they had plenty of possession, rarely threatened in front of goal.
Carlos Cuellar was handed a first home start alongside Zat Knight in the home side's reshuffled defence, while keeper Brad Guzan made his debut.
Villa had the first chance of the game on 10 minutes, with Barry, captaining for the first time since the collapse of the proposed move to Liverpool, and Nicky Shorey providing a chance to Stiliyan Petrov.
The Bulgarian refused to shoot and rolled the ball to Marlon Harewood who curled his effort wastefully over the bar.
This page is best viewed in an up-to-date web browser with style sheets (CSS) enabled. While you will be able to view the content of this page in your current browser, you will not be able to get the full visual experience. Please consider upgrading your browser software or enabling style sheets (CSS) if you are able to do so.