Robin van Persie and Cesc Fabregas both struck the base of Joe Hart's right-hand post in the first half and, when Fabregas' effort rebounded back to Theo Walcott, he hit the other post.
City then had goalkeeper Joe Hart to thank on the hour when he produced a wonderful fingertip save to deny Van Persie.
To make matters worse, the teams each finished with 10 men after full-backs Pablo Zabaleta and Bacary Sagna were shown straight red cards by referee Mike Jones for a needless clash by the touchline.
Arsenal almost snatched an early lead when Samir Nasri played Jack Wilshere into the left side of the penalty area - but his cut-back was just too far ahead of Van Persie, with Walcott's cross from the goalline then hacked clear.
City - expected to shortly complete the £27million signing of striker Edin Dzeko from Wolfsburg - broke quickly down the right and James Milner drilled a low shot across the area.
Van Persie again went within inches of putting Arsenal ahead when, after nine minutes, the Dutchman created space for a shot from the edge of the City box - and promptly drilled the ball against the base of Hart's right-hand post.
After such a frantic start, it was no surprise to see the tempo of the match drop.
Gareth Barry was cautioned after 21 minutes when he clattered into Sagna as the right-back looked to break clear.
At the other end, a deep free-kick found its way through to Carlos Tevez at the back post, but Alex Song was able to divert the loose ball behind.
After 27 minutes, Arsenal again hit the woodwork after a quick break through Nasri and Fabregas down the left, with the Arsenal skipper cutting back inside to wrongfoot Hart only for his shot to bounce off the base of the same post as Van Persie's did.
From the rebound, Walcott smashed an angled drive against the other upright, but the offside flag was already raised.
There was a warning for Arsenal when City broke quickly down the right and Tevez drilled the ball just over from 20 yards but the hosts were soon back on the attack and calling for a penalty when Walcott's cross hit Vincent Kompany's trailing arm, but the referee instead gave a only a corner.
The Gunners continued to press as half-time approached, yet were thwarted by some brave last-gasp defending.
Arsenal soon were back on the offensive following the restart and Walcott was almost released, but Wilshere's pass ran through to Hart.
Then on the hour City's England number one made a fantastic save to tip a goal-bound 25-yard drive from Van Persie over the crossbar.
City boss Roberto Mancini then made a change, replacing the ineffective Jo with England winger Adam Johnson and the visitors looked much more balanced.
As the match entered the final 22 minutes, Walcott was replaced by Arshavin.
Gunners boss Arsene Wenger then sent on Nicklas Bendtner, for Wilshere, with 10 minutes left, looking to give his side more presence in attack.
It did not really work, though, and both teams finished the match with 10 men after Zabaleta and Sagna's clash.
Despite four minutes of stoppage time, the breakthrough would not come and City held on for a point which keeps them second, but sees leaders Manchester United the night's big winners.