Henrik Pedersen scored the goal which ended Arsenal's 100% start to the season as battling Bolton earned a point at Highbury.
Arsenal took a first-half lead through Thierry Henry's crisp, low shot after good work from Patrick Vieira.
But Bolton struck back after the break as Tunisian defender Radhi Jaidi shouldered in Jay-Jay Okocha's corner.
Robert Pires' fortunate flick put Arsenal ahead again three minutes later but Pedersen slotted home late on.
Bolton's equaliser was well deserved after Sam Allardyce's men frustrated their opponents for long spells.
Arsenal seemed to be suffering from a European hangover following their Champions League win over PSV Eindhoven on Tuesday.
And they struggled to break down a packed Bolton midfield.
The Gunners were lacking their usual fluency, but Bolton's bustling style was a contributing factor.
And when Kevin Nolan let fly with a fizzing drive from long-range, Arsenal's hearts were in their mouths as they watched the ball whistle past the upright.
But Arsenal struck first after Vieira's determination and persistence set up a chance.
The Frenchman exchanged three passes with compatriot Henry, whose first touch and pace took him away from Jaidi and his low shot left Jussi Jaaskelainen stranded.
Henry should have had a first-half hat-trick but saw a header saved by Jaaskelainen and was also thwarted by the Bolton keeper when clean through on goal.
Lively Bolton midfielder Nolan tried his luck from distance again after the break and this time saw his shot clip the top of the crossbar.
Bolton's sprits were lifted and their determination was rewarded when Jaidi scored his first goal in English football to draw his side level.
Arsenal keeper Jens Lehman made a mess of coming to collect Okocha's corner and Jaidi powered the ball in off his shoulder.
But it stung Arsenal into action once more and Ljungberg soon created a chance for Pires.
However, it has to be said, there was more than an element of luck about Pires' finish as he dug Ljungberg's cross out from behind him and flicked it into the net.
It seemed Arsenal would march on from there, but the visitors had other ideas.
And two substitutes combined to set up the goal which earned Bolton a share of the spoils.
Les Ferdinand's flick-on found Pedersen and he coolly slotted his early shot into the corner.
Arsenal: Lehmann, Lauren, Toure, Cygan, Cole, Ljungberg,
Vieira, Silva (Edu 67), Pires (Clichy 82), Reyes (Bergkamp 70),
Subs Not Used: Hoyte, Almunia.
Goals: Henry 31, Pires 66.
Bolton: Jaaskelainen, Hunt, N'Gotty, Jaidi, Gardner,
Campo (Hierro 75), Nolan, Speed, Okocha, Diouf (Ferdinand 55),
Davies (Pedersen 55).
Subs Not Used: Barness, Oakes.
Booked: Campo, Ferdinand, Gardner.
Goals: Jaidi 63, Pedersen 85.
Ref: P Dowd (Staffordshire).