Bradford boosted their survival hopes and dented Oxford's play-off bid with an important victory.
The Bantams dominated early on and Craig Fagan had a goal ruled out for offside before Oxford's Damian Batt was sent off for a second booking.
Fagan scored a penalty after Andy Whing fouled Marcel Seip and James Hanson made it 2-0 with a header after a swift counter-attack.
Asa Hall's 20-yard effort gave the U's hope but a late rally was in vain.
VIEWS FROM THE DRESSING ROOM
Bradford City manager Phil Parkinson told BBC Radio Leeds:
"First half we played well and the sending off should of helped, and it did.
"I thought that was Kyle Reid's best match, he kept going and was a constant menace all afternoon.
"We have player's coming back to make the club stronger. we have been a bit threadbare in recent weeks.
"But I'm very confident that when we have our strongest team out we're a good side."
Sorry, we were unable to load match stats, please try again.