The New Year’s Eve contest started promisingly, with opportunities for both sides in the opening few minutes.
The Saddlers were first to threaten, Joe Edwards firing a dipping half-volley straight at U’s keeper Simon Eastwood after just 20 seconds.
Michael Appleton’s men responded immediately, with Kane Hemmings holding the ball up well for Chris Maguire who scuffed his effort wide from 20 yards.
The Scotland international went close again on 16 minutes, as he traded passes with Marvin Johnson out wide before drilling over the bar.
The rest of the half proved uneventful, with neither team offering much of an attacking threat.
Amadou Bakayoko fired off target from a tricky angle after being slipped in by Flo Cuvelier, before Ryan Ledson saw a deflected shot go just wide at the other end.
Half-time: Oxford 0-0 Walsall
Oxford did most of the pressing at the start of the second period; a Maguire free-kick sailed wide, Ledson curled over and Alex MacDonald fired tamely into the arms of Neil Etheridge.
Walsall had a good chance to break the deadlock on the hour-mark, when Joe Edwards burst into the box and cut the ball back for Simeon Jackson who blazed disappointingly over.
The Saddlers were enjoying a good spell and Joe Edwards went close himself moments later, unleashing a 25-yard half-volley which Eastwood parried behind.
Eastwood’s opposite number, Etheridge, was then called upon, first pushing away Johnson’s fizzing cross-shot before easily claiming Maguire’s tame attempt.
The visitors were looking the more dangerous, with Isaiah Osbourne brushing the side-netting on 73 minutes with a deflected strike.
And then, with 12 minutes remaining, substitute Erhun Oztumer latched onto Jackson’s reverse pass, checked inside Phil Edwards and tested Eastwood with a low right-footed drive at his near post.
Walsall continued to push for a winner in the closing stages, with Eastwood making an instinctive stop to keep out Joe Edwards’ deflected shot from close range.
The hosts somehow survived a goalmouth scramble in stoppage time, and could have nicked victory right at the death, but John Lundstram ballooned his shot over the bar.
Full-time: Oxford 0-0 Walsall
Team: Etheridge, McCarthy, O’Connor, Roberts, Laird, Chambers, Osbourne, Edwards, Cuvelier (Morris 72’), Jackson (Makris 87’), Bakayoko (Oztumer 72’).
Subs not used: MacGillivray, Dobson, Kinsella, Moussa.
Attendance: 8,340 (684 Walsall supporters).