Defences were largely in control in a first half punctuated by 24 free kicks and 4 bookings, two for each side and the game ended with Oxford reduced to 10 men when James Hunt was given a straight red card for a foul on Alex Calvo-Garcia in injury time.
Early sparring was pretty even with Scott McNiven whistling a sixth-minute drive over the top.
Scunthorpe had strong appeals for a penalty turned down three minutes later when a strong challenge by Andrew Crosby on Ian Kilford failed to receive a positive nod from the referee.
The home side began to show a little more thrust and following a Peter Beagrie corner, Calvo-Garcia saw a header pushed out by Andy Woodman before Paul Hayes turned the ball over after Mark Jackson had flicked on a Beagrie corner.
However the pressure paid off in the 29th minute when a Beagrie free-kick came off the woodwork and Hayes was there to knock home the rebound, his eighth goal since joining Scunthorpe in December.
As the visitors attempted to retrieve the situation Mark Jackson cleared off the line from Bobby Ford and then Tom Evans needed two attempts to save a drive from Dave Oldfield.
Scunthorpe had a glorious opportunity to stretch their lead within two minutes of the restart when Hayes showed excellent skills before pushing the ball to Kilford who fired over the top when it looked easier to score.
Oxford were finding the Scunthorpe defence a real stumbling block but a Ford corner saw Jackson pleased to head the ball wide of his own goal and McNiven drove in a free kick which was taken well by Evans.
Paul Dalglish replaced Beagrie with three minutes left and in the 90th minute he fired home Scunthorpe's second after collecting a superb 40-yard cross-field ball from Matt Sparrow.