Match ends, Bristol City 1, Oxford United 2.
League Two Oxford United came from behind to stun Bristol City and progress to the second round of the League Cup.
Midfielder Joe Bryan had put the hosts ahead after only 70 seconds.
But Carlton Morris levelled it after the break and Danny Hylton struck late to win it for the U's.
It is the sixth time in seven seasons that League One Bristol City have been eliminated from the competition by a team from a lower division.
Bryan had given the hosts the perfect start when he picked up on Jay Emmanuel-Thomas' blocked shot and sliced in with his right foot.
The early goal did not unsettle Oxford though, and they had the ball in the net before the break, only for Junior Brown's header to be ruled out by a late offside flag.
The U's kept up the pressure and made it 1-1, with Morris planting a powerful header past goalkeeper Frank Fielding, after Joe Riley's ball in.
And summer signing Hylton shocked the home support when he coolly slotted the winner past Fielding.
Bristol City manager Steve Cotterill told BBC Radio Bristol:
"I'm disappointed with how we played and I thought they were the better team.
"They looked a lot more up for it tonight than we did.
"It was just the type of start that I felt we needed and wanted because it might have given us the momentum to go on.
"But you have to give them credit. They were better than us on the night."
- 6El-AbdBooked at 70mins
- 14ReidSubstituted forWilliamsat 62'minutes
- 23BryanBooked at 22minsSubstituted forBurnsat 83'minutes
- 10Emmanuel-ThomasSubstituted forWilbrahamat 82'minutes
- 14RuffelsSubstituted forCollinsat 19'minutesBooked at 60mins
- 9MorrisSubstituted forHyltonat 73'minutes
- Lee Collins
- Shots on Target
Second Half ends, Bristol City 1, Oxford United 2.
Corner, Bristol City. Conceded by Tom Newey.
Corner, Oxford United. Conceded by Jordan Wynter.
Foul by Jordan Wynter (Bristol City).
Junior Brown (Oxford United) wins a free kick in the defensive half.
Attempt missed. Derrick Williams (Bristol City) right footed shot from outside the box is just a bit too high.
Goal! Bristol City 1, Oxford United 2. Danny Hylton (Oxford United) right footed shot from the centre of the box to the bottom left corner. Assisted by Junior Brown.
Attempt missed. Sam Baldock (Bristol City) right footed shot from outside the box is high and wide to the right.
Marlon Pack (Bristol City) wins a free kick in the attacking half.
Foul by Alfie Potter (Oxford United).
Attempt missed. Joe Riley (Oxford United) right footed shot from outside the box is close, but misses to the right.
Substitution, Bristol City. Wes Burns replaces Joe Bryan.
Substitution, Bristol City. Aaron Wilbraham replaces Jay Emmanuel-Thomas.
Corner, Oxford United. Conceded by Derrick Williams.
Hand ball by Tom Newey (Oxford United).
Attempt missed. Jay Emmanuel-Thomas (Bristol City) right footed shot from the centre of the box misses to the right.
Attempt blocked. Scott Wagstaff (Bristol City) header from very close range is blocked.
Joe Bryan (Bristol City) wins a free kick on the left wing.
Foul by Joe Riley (Oxford United).