Match ends, Oxford City 2, Northampton Town 1.
Non-league Oxford City stunned Northampton Town to set up an FA Cup second-round tie against Shrewsbury.
The National South side, 63 places below League One Northampton on the football ladder, deservedly came from behind to secure a second-round spot for the third time in their history.
Sam Hoskins' goal for the Cobblers was cancelled out by James Roberts' header.
And even though Roberts saw a penalty saved, Josh Ashby converted his own spot-kick for a famous win.
- See full draw for FA Cup second round
- Relive Oxford City's win over Northampton
- Watch all of the latest FA Cup highlights and reaction here
It looked like it might be a straightforward evening for Keith Curle's Northampton when Hoskins swept in Mark Marshall's cut-back in the seventh minute.
But the Hoops, full of energy, were a constant threat, equalising when Roberts nodded in Louis Hall's looping cross.
The hosts' commitment was epitomised by Aaron Drewe's stunning, sliding goalline clearance to stop Mark Marshall's strike restoring the Cobblers' lead.
And after Roberts was denied from the spot following a foul by Joe Martin, Ashby converted a penalty of his own after a tug by Fraser Horsfall on Elliot Benyon.
Hoskins had Northampton's best chance late on, firing at keeper Ben Dudzinski, but Oxford City will now look to reach the third round for the first time when they travel to League One Shrewsbury on the weekend of 28-29 November.
Oxford City manager David Oldfield to BT Sport: "I am very proud of our boys to come from a goal down and get over the line.
"I don't think we will fear Shrewsbury, but they will not fear us either. We can't think about that yet, we just have to be excited and it is sad for the fans they cannot be here."
Oxford City goalscorer James Roberts: "The first was a team goal and I was lucky enough to be there to nod it in. That says everything about the team, even against opposition higher than us, we do not give up.
"Missing a penalty is part and parcel of the game. You get your head back up and my good friend Josh Ashby dug me out of there."
Northampton manager Keith Curle: "Where shall I start? Nowhere near good enough. I have players who have been banging on my door, wanting an opportunity and tonight was a perfect platform for them but collectively they did not deliver.
"You have to give Oxford City a lot of credit. They closed us down, made us play their type of game and they were better than us, they out-fought us and out-competed us. I think it will be quiet this week, I won't have many players banging on my door wanting to play."
Line-ups
Oxford City
Formation 4-4-1-1
- 1Dudzinski
- 2Drewe
- 19Fernandez
- 6Oastler
- 3Hall
- 7Roberts
- 4Ashby
- 8Fleet
- 10McEachranSubstituted forMartinezat 75'minutes
- 15CoyleSubstituted forOwusuat 86'minutesBooked at 90mins
- 14BradburySubstituted forBenyonat 66'minutes
Substitutes
- 5Martinez
- 9Benyon
- 11Owusu
- 12Bancroft
- 13Grantham
- 17Naylor
- 18George
Northampton
Formation 3-5-2
- 13Mitchell
- 15Racic
- 6HorsfallBooked at 67mins
- 3MartinBooked at 52mins
- 45MarshallSubstituted forRoseat 64'minutes
- 11Korboa
- 7Hoskins
- 27Missilou
- 19RobertsSubstituted forHolmesat 72'minutes
- 30ChukwuemekaSubstituted forSmithat 64'minutes
- 22Ashley-Seal
Substitutes
- 2Harriman
- 8Watson
- 9Smith
- 10Adams
- 21Holmes
- 29Rose
- 35Berry
- Referee:
- Paul Howard
Match Stats
- Possession
- Home51%
- Away49%
- Shots
- Home20
- Away11
- Shots on Target
- Home6
- Away4
- Corners
- Home9
- Away4
- Fouls
- Home17
- Away14
Live Text
Post update
Full Time
Second Half ends, Oxford City 2, Northampton Town 1.
Booking
Nana Owusu (Oxford City) is shown the yellow card for a bad foul.
Post update
Luka Racic (Northampton Town) wins a free kick in the defensive half.
Post update
Foul by Nana Owusu (Oxford City).
Post update
Foul by Ricky Korboa (Northampton Town).
Post update
Reece Fleet (Oxford City) wins a free kick on the right wing.
Post update
Attempt blocked. Ricky Holmes (Northampton Town) right footed shot from outside the box is blocked.
Post update
Ricky Holmes (Northampton Town) wins a free kick in the attacking half.
Post update
Foul by Joe Oastler (Oxford City).
Post update
Offside, Oxford City. Josh Ashby tries a through ball, but Joe Oastler is caught offside.
Substitution
Substitution, Oxford City. Nana Owusu replaces Lewis Coyle.
Post update
Foul by Fraser Horsfall (Northampton Town).
Post update
Elliot Benyon (Oxford City) wins a free kick in the attacking half.
Post update
Attempt saved. Sam Hoskins (Northampton Town) right footed shot from outside the box is saved in the centre of the goal.
Post update
Attempt missed. Harry Smith (Northampton Town) right footed shot from the left side of the box misses to the left. Assisted by Joe Martin.
Post update
Foul by Josh Ashby (Oxford City).
Post update
Ricky Holmes (Northampton Town) wins a free kick in the defensive half.
Post update
Corner, Oxford City. Conceded by Benny Ashley-Seal.
Post update
Foul by Pablo Martinez (Oxford City).