Raheem Sterling struck twice as Pep Guardiola's winning start as Manchester City boss continued with a hard-fought 3-1 win over West Ham.
Sterling's first after seven minutes and another from Fernandinho soon after appeared to put a dominant City on course for a huge victory at the Etihad Stadium.
But the hosts were unable to maintain their scintillating early pace and Michail Antonio's 58th-minute reply set up a tense finish until Sterling rolled in his second in injury time.
City's victory sets up a mouth-watering derby against Manchester United next month, although Sergio Aguero could face disciplinary trouble after an apparent elbow on Winston Reid went unpunished.
As expected, Guardiola returned to Willy Caballero in goal, with Joe Hart on the bench, as Claudio Bravo was kept waiting for his debut.
But at times City's play and dominance of possession was so mesmerising they hardly seemed to need a keeper.
They looked in the mood from the outset with the training ground lessons from Guardiola having clearly sunk in further.
David Silva and Sterling were particularly lively and as Aguero won possession and brushed past Reid to shoot wide after just two minutes, it seemed the Hammers were in for a long afternoon.
It came as no surprise when City took the lead. Silva carried the ball forward from deep and spread wide for Nolito, whose first time ball across goal was tucked home clinically by Sterling.
Just over 10 minutes later City doubled their lead as Kevin De Bruyne whipped in one of many dangerous free-kicks.
The Belgian's curling, dipping delivery arrived at the perfect height for Fernandinho to rise and power a header into the net.
City could easily have had more before the break as their attacking players combined beautifully on a number of occasions.
De Bruyne thought he had made it 3-0 after carving through West Ham with a neat exchange of passes with Silva but his shot was deflected narrowly wide.
West Ham hardly saw any of the ball with their only notable effort before the break coming when Gokhan Tore lobbed in a cross and Ashley Fletcher, on his full debut, headed wide.
Yet even then there were mitigating factors for City with John Stones off the field for treatment following a heavy bang to the knee in a collision with Arthur Masuaku.
City had the ball in the net early in the second half following another vicious De Bruyne free-kick but Nolito, who got the final touch, was one of two players offside.
Nolito then curled another effort into the side-netting as City threatened more but West Ham suddenly got themselves back into the game just before the hour.
Caballero, hurt moments earlier after a late challenge from Fletcher, was caught out of position as Masuaku crossed and Antonio headed in at the far post.
City came again with De Bruyne slipping in Aguero on goal but the normally deadly Argentinian shot just the wrong side of the post.
Still, the tempo of the first half was missing and Aguero may have been lucky to escape punishment after appearing to catch Reid.
City tried to sharpen up by sending on Samir Nasri, whose future under Guardiola is unclear, and the Frenchman almost struck after being played in by Aguero only for Adrian to block his shot.
Nasri fired another good chance over and Silva hit the post but Sterling made sure with a cool finish in the closing moments.