Sergio Aguero scored his fifth goal in his last three games to help Manchester City back into third place in the Premier League and keep Sunderland rooted to the bottom of the table.
The Black Cats had defended doggedly before a swift City counter attack ended with Aguero prodding in Raheem Sterling’s low cross from close range.
The visitors then clicked into gear as David Silva fed the explosive Leroy Sane for the Germany winger to double their lead after the break.
Jermain Defoe did find the net in a rare Sunderland attack late on, but his header was ruled out for offside.
The result could have been more comfortable for City, but Sunderland keeper Jordan Pickford saved well from Aguero.
For all City’s possession, it was the hosts who threatened first, Defoe hitting the post with a bouncing effort from outside the box that had Willy Caballero beaten.
Fabio Borini headed wide from the rebound, and any hopes David Moyes’ side had of taking three points seemed to evaporate with that miss.