Manchester City suffered their fourth Premier League defeat of the season as Sunderland's revival under Gus Poyet gathered pace.
Phil Bardsley scored the only goal in the first half when he shrugged off James Milner and curled in a low shot.
City dominated thereafter but were thwarted by a well-organised Sunderland defence and goalkeeper Vito Mannone.
Sergio Aguero headed wide from close range and had a shot palmed away by Mannone as the Black Cats held on.
City's bogey ground
Manchester City have suffered 1-0 defeats on each of their last four trips to the Stadium of Light
By the end of the match, as the hosts soaked up incessant City pressure, every Sunderland touch was greeted with a roar by the home fans.
It was the Black Cats' third win in four games in all competitions and Poyet's third in as many home games since he succeeded Paolo Di Canio as manager.
In just over a month at the helm, the Uruguayan appears to have instilled a confidence and composure in his team.
With Wes Brown making his first Premier League start in 22 months, the defence carried a steeliness that has been missing for most of a miserable start to the season as they registered their first clean sheet of the campaign.
Brown and his former Manchester United team-mate John O'Shea were outstanding as they tamed City's prolific strikers Aguero and Alvaro Negredo, and largely restricted their visitors to speculative shots from distance.
Pellegrini worried about Man City away form
Even at this early stage of the season, a dangerous pattern is emerging for City, whose 100% home league record contrasts starkly with their performances away from the Etihad Stadium, where they have four defeats and just one win in six games.
It is an alarming weakness, and one that manager Manuel Pellegrini will have to address immediately if his team is to maintain hope of wresting the title back from Manchester United.
City were punished for a slow start as the home side seized the early initiative.
They created the first opening when Sebastian Larsson's cross from the right picked out Steven Fletcher, whose header from the penalty spot lacked power and drifted wide.
Soon afterwards, Larsson was extremely fortunate to escape punishment when his studs connected with Javi Garcia's ankle in midfield.
Referee Mike Dean's leniency was on display once again in the build-up to the opening goal.
Poyet salutes Sunderland 'perfection'
The official opted not to penalise Bardsley when he appeared to bundle over Milner, allowing the full-back to race on to Brown's long pass and curl a precise finish past Costel Pantilimon.
Aguero had a clear chance to level on the half hour, but he headed wide from close range after some slick City build-up.
An ankle injury to Garcia forced City into a half-time change, and his replacement Jesus Navas made an instant impact.
Moments after seeing his cross from the right headed wide by his former Sevilla team-mate Negredo, the Spain winger latched on to Aguero's cut-back and had two goal-bound shots blocked by Sunderland defenders.
As City's onslaught intensified, Sunderland keeper Vito Mannone had to be at his best to tip a low Aguero drive around the post and fist away a 25-yard effort from substitute Edin Dzeko.
The ball barely left the Sunderland half in a frantic last 10 minutes, but when the final whistle sounded, Poyet and his team could at last celebrate a hard-earned victory.
This page is best viewed in an up-to-date web browser with style sheets (CSS) enabled. While you will be able to view the content of this page in your current browser, you will not be able to get the full visual experience. Please consider upgrading your browser software or enabling style sheets (CSS) if you are able to do so.