An early, and fortunate, David Weir goal was enough to seal the points for Everton as they continued their surge up the Premiership table.
The Scotsman struck after just eight minutes, or more accurately the ball struck him and rebounded in, to give David Moyes' men a deserved win.
City came to Goodison Park looking to ruin Everton's eight-game unbeaten run on the back of a fantastic display against Newcastle which forced the sacking of Graeme Souness.
Moyes' side were last beaten by Liverpool on December 28 and their return to form could yet see them challenge for a UEFA Cup place.
Both Everton and City made just one change to their squads. Fit again James Beattie replaced James McFadden and Andy Cole was dropped to the bench in favour of £6million new signing Georgios Samaras.
Leon Osman signalled Everton's intent immediately with a surging run through the heart of the City defence, but his powerful shot just clipped the top of the bar.
The Toffees set their stall out early and City were clearly rattled as wave after wave of Everton attacks came.
When the goal arrived though it had a touch of fortune about it. Mikel Arteta's corner saw Tim Cahill rise to head on goal, Richard Dunne's attempted headed clearance only got as far as Weir's knee which directed the ball into David James' net.
The pride City felt about the Newcastle result was wiped away quickly as a brilliant Everton put them under the cosh.
Tony Hibbert made a great tackle to deny Albert Riera on 15 minutes as City reminded the hosts they were on the pitch, before Phil Neville was adjudged to have handled just outside his own area, but Joey Barton's shot was hit straight at the wall.
Weir was dispossessed by Stephen Jordan, which could have more serious had City been more intelligent. Everton were maybe guilty of being over confident as City were working their way back into the game.
Kiki Musampa's shot from outside Richard Wright's area went well wide and Trevor Sinclair put an effort high into the stand.
Maybe Eveton didn't have to worry after all.
For all Everton's early dominance Moyes must have been concerned that his team went in only one up at the break. Stuart Pearce would have used the time to try and fire his team up.
Everton started where they left off by forcing two corners in quick succession and the home crowd sensed a second goal as the Toffees turned the screw.
Stubbs had to head over his own bar though on 52 minutes as Darius Vassell lofted a dangerous ball into the area, before Barton almost helped level matters with a wicked corner only to see Samaras guide his header onto the roof of the net.
Cahill skimmed the top of James' goal with a powerful angled drive from 20 yards out, but Everton were starting to look a little jaded after their first-half endeavours.
City came close to a goal thanks largely to the officials.
First the referee Andre Marriner missed a blatant foul on Beattie, then his assistant unbelievably failed to spot three City players offside as the ball bobbled around the Everton area.
Luckily for the hosts they managed to clear the danger.
Pearce went for broke with 13 minutes to play bringing on Bradley Wright-Phillips and Antoine Sibierski for Samaras and Vassell.
Moyes responded by replacing the largely redundant Beattie with McFadden and Osman with Simon Davies.
Cahill headed brilliantly off the line after a Cole scissor-kick almost levelled matters in the dying minutes.
Jordan was dismissed for a rash tackle on Hibbert in the dying seconds. He had endured a torrid afternoon at the hands of Arteta and was probably glad to leave the field.