Arsenal endured a frustrating evening as they were held to a draw by a dogged and determined Bolton.
Even some second-half brilliance from Robin van Persie failed to break the deadlock, with the Dutchman's exquisite lob hitting the bar.
Bolton might have nicked victory, but Mark Davies saw his late penalty appeal turned down when he was sent tumbling by Wojciech Szczesny.
The hosts deserved a point, while the Gunners will rue some poor finishing.
It might have been different if the north London side had converted one of their early chances but they slowly ran out of steam as their efforts went unrewarded.
However, Bolton deserve plenty of credit for the way they stuck at their task and their mini-revival, which has seen them lose only one of their last five top-flight fixtures as they have climbed out of the bottom three, shows no sign of slowing down.
Arsenal dominated the first half, creating some good chances, but their finishing left a lot to be desired.
Van Persie saw an effort cleared off the line by David Wheater, while Alex Oxlade-Chamberlain, who was a constant menace, shot wide.
However, for all their eye-catching play in the final third, the visitors looked vulnerable at the back with David Ngog twice going close to leaving them red-faced.
First he got in front of Laurent Koscielny and forced a close-range save from Szczesny before, moments later, Wheater's clever flick set the Frenchman free to fire just wide.
The second chance was ruled offside anyway, but the warning signs were there for the Gunners.
New BBC Sport website: Three things you'll notice on football
- Our live text commentary pages and Sportsday Live will update quicker, look better and include pictures
- Full football tables - click on the chevron to the left of your club's team name to see a team-tracker and up-to-date stats
- We've given our live scores page more stats - take a look when the games are on; go to Football and click on Live Scores at the top
They looked like they might heed them when Walcott was given a clear run on goal by Oxlade-Chamberlain's fantastic pass, but the England winger lacked composure when it mattered as his shot was easily deflected wide by Adam Bogdan.
Walcott was enduring a frustrating night, with plenty of positive approach play being spoilt by some poor finishing.
Bolton did a good job of stifling Arsenal's spark in the second half, and had a good chance of their own when Wheater headed wide.
But the inevitable Gunners onslaught finally materialised and they twice went close to breaking the deadlock.
Van Persie was unlucky to see his shot come back off the post following good work down the right from Bacary Sagna, before Oxlade-Chamberlain flashed a shot just over the bar from 30 yards out.
Arsenal were desperate for all three points in their bid to climb back into contention for a top-four finish - something they have enjoyed for the past 15 seasons - and they turned to Thierry Henry with 20 minutes remaining.
However, Bolton were growing in confidence and Ngog and Gretar Steinsson caused moments of alarm with half-chances in the penalty area.
Even some Dennis Bergkamp-like magic from compatriot Van Persie could not prevent the stalemate, with the Dutchman's delicate lob from the edge of the area bouncing off the crossbar and, from the resulting scramble, Walcott again failed to find the target.
However, defeat would have been harsh on Bolton, who ended the game on the front foot and were left incensed by referee Chris Foy's decision not to give a spot-kick for Szczesny's challenge on Mark Davies.
It was a close call for Arsenal, who must rediscover winning ways if they are to challenge for a Champions League berth.
As for Bolton, survival suddenly seems achieveable for a side that has been revitalised in recent weeks.
Bolton manager Owen Coyle: "Coming into the game we were in good form but we knew we would have to work very hard against a quality side.
"Adam [Bogdan] made a great save from Walcott and David Ngog had a couple of great chances to score in the first half.
"In the second half the longer the game got the stronger we got and if truth be told we could have won the game late on so there is a lot to be pleased about."
Arsenal manager Arsene Wenger: "We have gone through a difficult period, we've lost three league games (prior to tonight's match) but we could have won the three as well.
"We have confidence but we have to produce it game by game - for us every game in the championship is a cup final for us now."
Live Text Commentary
Full Time The match has reached full-time.90:00 +2:25
Thierry Henry gives away a free kick for an unfair challenge on Tuncay Sanli. Gretar Rafn Steinsson restarts play with the free kick.90:00 +2:09
Header by Mark Davies from deep inside the penalty area misses to the left of the target.90:00 +1:35
Foul by Tomas Rosicky on Zat Knight, free kick awarded. Adam Bogdan takes the free kick.90:00 +0:06
Effort from inside the area by Mark Davies misses to the left of the target.89:19
Tuncay Sanli takes a shot. Laurent Koscielny gets a block in.88:03
Indirect free kick taken by Adam Bogdan.88:03 Substitution
Substitution Nigel Reo-Coker goes off and Darren Pratley comes on.88:03
The assistant referee signals for offside against Thierry Henry.87:21
Nigel Reo-Coker has an effort at goal from just outside the area which goes wide of the left-hand post.85:24
Free kick awarded for an unfair challenge on Kevin Davies by Thomas Vermaelen. Gretar Rafn Steinsson crosses the ball in from the free kick.82:19
Samuel Ricketts takes a shot. Per Mertesacker gets a block in.79:12 Substitution
Substitution Martin Petrov leaves the field to be replaced by Tuncay Sanli.79:12 Substitution
Substitution Aaron Ramsey leaves the field to be replaced by Tomas Rosicky.79:12
Robin van Persie takes a shot. Effort on goal by Theo Walcott from inside the penalty box misses to the right of the target.75:05
Kevin Davies concedes a free kick for a foul on Bacary Sagna. Bacary Sagna takes the direct free kick.73:55
Inswinging corner taken left-footed by Martin Petrov from the right by-line to the near post, Thomas Vermaelen makes a clearance.73:55 Substitution
Substitution (Bolton) makes a substitution, with Kevin Davies coming on for David Ngog.69:08
Foul by Mikel Arteta on Nigel Reo-Coker, free kick awarded. Direct effort from the free kick comes in from Martin Petrov. Martin Petrov takes the outswinging corner, Zat Knight takes a shot. Blocked by Robin van Persie. Outswinging corner taken by Martin Petrov. David Ngog takes a shot. Thomas Vermaelen gets a block in. Gretar Rafn Steinsson takes a shot from just inside the penalty box which clears the bar.68:15 Substitution
Substitution Alex Oxlade-Chamberlain leaves the field to be replaced by Thierry Henry.
Aaron Ramsey produces a right-footed shot from deep inside the penalty area which goes wide of the right-hand post.65:53
Martin Petrov takes the outswinging corner, Thomas Vermaelen makes a clearance. Outswinging corner taken by Martin Petrov, Thomas Vermaelen makes a clearance.65:03
Inswinging corner taken by Robin van Persie, clearance made by Zat Knight.64:32
Fabrice Muamba gives away a free kick for an unfair challenge on Alex Song. Bacary Sagna restarts play with the free kick.63:24
Bacary Sagna concedes a free kick for a foul on Samuel Ricketts. Adam Bogdan restarts play with the free kick.61:29
Alex Oxlade-Chamberlain has an effort at goal. Adam Bogdan makes a save. Robin van Persie takes the inswinging corner, Laurent Koscielny has a headed effort at goal from close in which goes wide of the left-hand upright.60:59
Robin van Persie has an effort at goal from close in that strikes the post.60:33
Theo Walcott takes a shot. Samuel Ricketts gets a block in.59:24
The assistant referee signals for offside against Thomas Vermaelen. Adam Bogdan restarts play with the free kick.56:59
The referee blows for offside against David Ngog. Free kick taken by Thomas Vermaelen.55:02
Corner taken by Chris Eagles, Headed effort from inside the area by David Wheater misses to the right of the target.53:57
Unfair challenge on David Ngog by Theo Walcott results in a free kick. Direct free kick taken by Adam Bogdan.52:23
The assistant referee flags for offside against Theo Walcott. Adam Bogdan restarts play with the free kick.51:57
David Ngog takes a shot. Comfortable save by Wojciech Szczesny.51:15
The offside flag is raised against Robin van Persie. Free kick taken by Adam Bogdan.48:15
Mark Davies gives away a free kick for an unfair challenge on Mikel Arteta. Direct free kick taken by Per Mertesacker.45:55
Inswinging corner taken left-footed by Robin van Persie from the right by-line, David Wheater makes a clearance.45:01
The referee starts the second half.45:00 +1:08 Half time
Half Time It is the end of the first-half.43:53
Per Mertesacker fouled by David Ngog, the ref awards a free kick. Wojciech Szczesny takes the direct free kick.41:20
Mikel Arteta concedes a free kick for a foul on Chris Eagles. Martin Petrov crosses the ball in from the free kick.38:24
Free kick crossed right-footed by Mikel Arteta from left wing, clearance by Zat Knight.38:24 Booking
Booking The referee books Gretar Rafn Steinsson for unsporting behaviour.38:18
Foul by Gretar Rafn Steinsson on Alex Oxlade-Chamberlain, free kick awarded.37:00
Free kick crossed left-footed by Martin Petrov from right channel, comfortable save by Wojciech Szczesny.37:00 Booking
Booking Thomas Vermaelen booked for unsporting behaviour.36:51
Thomas Vermaelen challenges Mark Davies unfairly and gives away a free kick.33:36
The assistant referee signals for offside against David Ngog. Mikel Arteta restarts play with the free kick.28:35
Bacary Sagna concedes a free kick for a foul on Mark Davies. Chris Eagles crosses the ball in from the free kick, Laurent Koscielny manages to make a clearance.26:44
Samuel Ricketts takes a shot from 25 yards. Save by Wojciech Szczesny.25:01
Theo Walcott takes a shot. Adam Bogdan makes a save. Inswinging corner taken from the right by-line by Alex Oxlade-Chamberlain, Thomas Vermaelen takes a shot. Blocked by David Wheater.22:17
Shot by David Ngog from deep inside the penalty area misses wide to the left of the target.21:39
Chris Eagles fouled by Thomas Vermaelen, the ref awards a free kick. Free kick taken by Nigel Reo-Coker.20:08
Alex Oxlade-Chamberlain takes a shot from just outside the penalty area clears the crossbar.19:50
David Ngog takes a shot. Wojciech Szczesny makes a save.18:55
Alex Oxlade-Chamberlain fouled by Chris Eagles, the ref awards a free kick. Thomas Vermaelen takes the free kick.17:17
Corner taken left-footed by Robin van Persie, Header by Alex Oxlade-Chamberlain from deep inside the penalty area misses to the left of the goal.16:20
The referee blows for offside against Martin Petrov. Free kick taken by Wojciech Szczesny.15:21
Effort on goal by Robin van Persie from just inside the area clears the crossbar.14:55
Foul by Fabrice Muamba on Mikel Arteta, free kick awarded. Direct free kick taken by Mikel Arteta.14:17
David Ngog is flagged offside by the assistant referee. Wojciech Szczesny restarts play with the free kick.11:21
Effort on goal by Alex Oxlade-Chamberlain from deep inside the penalty area misses to the right of the goal.10:42
Robin van Persie takes a shot. Blocked by David Wheater.10:23
Free kick awarded for a foul by David Ngog on Mikel Arteta. Thomas Vermaelen takes the direct free kick.9:07
Aaron Ramsey takes a shot. Save by Adam Bogdan.8:00
Robin van Persie takes a shot. Clearance made by Gretar Rafn Steinsson.4:11
Corner taken left-footed by Robin van Persie, David Ngog makes a clearance.1:54
Handball by Theo Walcott. Free kick taken by Adam Bogdan.0:00
The referee gets the game started.
Live data and text provided by our data suppliers