Jon-Paul Pittman's first goal in 10 months helped Oxford beat Northampton for their first league win of November.
The U's went ahead with a James Constable tap-in and they could have led by more with Sean Rigg and Jake Forster-Caskey hitting the woodwork.
Clive Platt's header from Chris Hackett's cross put Town on level terms but three minutes later Pittman blasted home from Peter Leven's ball.
Town had Clarke Carlisle sent off late on for a second booking.
VIEW FROM THE DRESSING ROOM
Northampton Town manager Aidy Boothroyd told BBC Radio Northampton:
"I thought Oxford started much better than we did but we always think we can score a goal.
"They couldn't handle Clive Platt. Once we got that momentum, I genuinely thought we were going to win that game.
"Possession is great but I didn't think we got enough bodies in the box and I don't think we were incisive enough.
"I think we missed Joe Widdowson today but I was pleased with Danny East's contribution, playing out of position."