Manchester City dug deep into their defensive reserves to deny Manchester United in the Old Trafford derby.
United were shut out for the second successive Premiership game by a resolute and determined City side, who offered little of an attacking threat.
City survived some erratic handling from David James, while Louis Saha scorned United's best chance, heading wide from six yards.
United's Alan Smith was sent off for a second bookable offence.
United made a rip-roaring start, with Mikael Silvestre refused a first-minute penalty when Sylvain Distin's tug on his shirt denied him a free header.
Paul Scholes then pinged a peach of a 60 yard pass to Louis Saha who chested the ball down and saw David James get a piece of his shot to allow Stephen Jordan to hare back and scrape it off the line.
United had another strong penalty appeal waved away when Anton Sibierski blocked Saha before Danny Mills hooked the ball away as Alan Smith closed in.
City almost caught United short-handed at the back and Nicolas Anelka might have done better when Sibierski's long pass picked him out and his attempt to loop a header over Roy Carroll was a weak one.
The early traffic was one-way and with even lone striker Anelka forced deep to help man the pumps, City found it hard to break out of their half.
A rare City raid saw Roy Keane yellow carded for a foul on Willo Flood and from the resulting free-kick, Distin rose at the far post to plant a header at Carroll.
Mills' foul on Ronaldo presented United with a chance 19 yards out but the Portuguese international picked himself up to blast his shot straight into City's defensive wall.
Louis Saha tries to hurdle Steve McManaman's challenge
The under-employed Carroll had to be alert to gather as Shaun Wright-Phillips threatened to latch on to Anelka's flick while at the other end James failed to hold Ronaldo's shot and was relieved no red shirt was on hand to cash in on the loose ball.
James flapped unconvincingly at Saha's cross after the Frenchman skipped past Dunne at the start of the second-half but again escaped punishment.
City were defending heroically and Mills just got above Smith to win the ball as the United striker looked favourite to head home Neville's flick.
James' erratic handling conitnued to put City hearts in their mouths, and when the England keeper spilled the ball in gathering ahead of Scholes he escaped again as Saha rattled his shot straight at him.
City were bailed out by Steve McManaman, on sentry duty on the post, who scraped Smith's acrobatic bicycle kick off the line.
United opened City up with Saha's reverse pass sending Giggs free but with only James to beat he fired wide.
Distin then got up just to nick Giggs' cross off Saha's head and was relieved to see the ball deflect inches wide of the goal.
As United's frustration increased, Smith's reckless late challenge on Dunne earned him a second yellow card from referee Poll.
Even after that, United might have snatched a winner but Saha headed wide from six yards out.
Man Utd: Carroll, Gary Neville, Ferdinand, Silvestre, Heinze, Miller (Giggs 46), Keane, Scholes (Rooney 77), Ronaldo, Saha, Smith.
Subs Not Used: Howard, Phil Neville, Brown.
Sent Off: Smith (89).
Booked: Keane, Smith.
Man City: James, Mills, Dunne, Distin, Jordan, Flood, Bosvelt, McManaman, Sibierski, Shaun Wright-Phillips, Anelka.
Subs Not Used: Fowler, Onuoha, Waterreus, McCarthy, Bradley Wright-Phillips.
Booked: Jordan, Flood.
Ref: G Poll (Hertfordshire).