Match ends, Fulham 2, Manchester City 4.
Fulham 2-4 Manchester City
Manchester City moved up to second in the Premier League table after a thrilling victory against Fulham.
Yaya Toure scored direct from a free-kick and Vincent Kompany prodded in a second as City looked to be in control.
Fulham pulled one back when Kieran Richardson finished off a counter-attacking move before Kompany sliced a clearance into his own net for 2-2.
But Jesus Navas converted David Silva's pass to restore City's lead and James Milner tapped in a fourth goal late on.
City are now unbeaten in nine matches in all competitions and are only a point behind Liverpool, who had moved top earlier in the day with a 3-1 victory over Cardiff.
Manuel Pellegrini's side had won all eight of their home league matches, but had previously struggled on their travels, collecting only eight points from their first eight away games.
But they looked on course to claim a routine victory after first-half goals from Toure and Kompany, before the hosts fought back to 2-2, aided by a bizarre own goal from Kompany, who sliced the ball into his own goal under no pressure.
City then illustrated the strength of their squad with substitutes Navas and Milner both scoring late on.
Fulham, who stay 19th, had an early chance to go ahead but Joe Hart, making his first Premier League start since 27 October, pushed away Adel Taarabt's shot from the edge of the penalty area, before Silva curled an effort against the Fulham crossbar at the other end.
However, City, who have scored the most goals in the division, went ahead soon after with Toure grabbing his 11th of the season, a wonderful 20-yard free-kick after Steve Sidwell's foul on Silva.
The visitors doubled their lead just before half-time with Kompany tapping the ball in from close range after Martin Demichelis's header was parried by Maarten Stekelenburg to give City a well-deserved two-goal lead at the break.
Fulham had lost eight of their previous nine matches in all competitions and looked to be heading for another defeat, but they pulled a goal back after 50 minutes with a quick counter-attack after Silva had been dispossessed on the edge of the home side's penalty area.
The excellent Taarabt, playing in place of the injured Dimitar Berbatov, countered down the left wing and found an unmarked Richardson, who calmly finished past Hart from 12 yards out.
And the hosts then equalised through Kompany's extraordinary 70th-minute own goal - but they were only level for eight minutes.
Silva's excellent first-time through ball found Navas and the Spain international kept his composure to shoot low past Stekelenburg.
With Fulham pushing for another equaliser, City sealed the three points through Milner.
Striker Alvaro Negredo showed great technique to cross the ball with the outside of his left foot from the right wing, the ball falling to Milner to side-foot past the Fulham goalkeeper.
Fulham manager Rene Meulensteen said:
"I made it clear at the beginning of the week that against a quality side like this, we would not sit back and wait for them. We gave a good account of ourselves and we did extremely well to get back from 2-0 down to 2-2.
"But it is a shame we are again empty-handed. If you look at every performance in the last four games, we should not be in this position in the table. We have had some difficult opponents and we have to make sure we start turning the performances into points."
See a photo gallery of all the action from Saturday's Premier League matches on the BBC Sport Facebook site.
- 14KaragounisBooked at 60minsSubstituted forBentat 82'minutes
- 4SenderosSubstituted forAmorebietaat 37'minutes
- 24DejagahSubstituted forKasamiat 65'minutes
- 26DemichelisBooked at 45mins
- 8NasriSubstituted forMilnerat 75'minutes
- 42Y Touré
- 10DzekoSubstituted forJesús Navasat 58'minutes
- 21SilvaSubstituted forJavi Garcíaat 84'minutes
- 14Javi García
- 15Jesús Navas
- Kevin Friend
- Shots on Target
Second Half ends, Fulham 2, Manchester City 4.
Attempt blocked. Pajtim Kasami (Fulham) left footed shot from outside the box is blocked.
Foul by Fernandinho (Manchester City).
Adel Taarabt (Fulham) wins a free kick in the attacking half.
Foul by Fernandinho (Manchester City).
Aaron Hughes (Fulham) wins a free kick in the defensive half.
Attempt saved. Álvaro Negredo (Manchester City) left footed shot from the centre of the box is saved in the centre of the goal.
Attempt saved. Álvaro Negredo (Manchester City) left footed shot from outside the box is saved in the centre of the goal. Assisted by Aleksandar Kolarov.
Foul by Álvaro Negredo (Manchester City).
Steve Sidwell (Fulham) wins a free kick in the defensive half.
Offside, Fulham. Adel Taarabt tries a through ball, but John Arne Riise is caught offside.
Attempt blocked. James Milner (Manchester City) right footed shot from outside the box is blocked. Assisted by Fernandinho.
Substitution, Manchester City. Javi García replaces David Silva.
Goal! Fulham 2, Manchester City 4. James Milner (Manchester City) right footed shot from the centre of the box to the bottom left corner. Assisted by Álvaro Negredo with a cross.
Substitution, Fulham. Darren Bent replaces Giorgos Karagounis.
Goal! Fulham 2, Manchester City 3. Jesús Navas (Manchester City) right footed shot from a difficult angle on the right to the centre of the goal. Assisted by David Silva with a through ball.
Foul by Yaya Touré (Manchester City).
Giorgos Karagounis (Fulham) wins a free kick in the attacking half.
Substitution, Manchester City. James Milner replaces Samir Nasri.
Corner, Manchester City. Conceded by Fernando Amorebieta.
Own Goal by Vincent Kompany, Manchester City. Fulham 2, Manchester City 2.
Substitution, Fulham. Pajtim Kasami replaces Ashkan Dejagah.
Samir Nasri (Manchester City) wins a free kick in the attacking half.
Foul by Steve Sidwell (Fulham).
Foul by Samir Nasri (Manchester City).
Giorgos Karagounis (Fulham) wins a free kick on the right wing.
Corner, Fulham. Conceded by Aleksandar Kolarov.
Giorgos Karagounis (Fulham) is shown the yellow card.
Attempt missed. Jesús Navas (Manchester City) right footed shot from the centre of the box misses to the right.
Attempt blocked. Álvaro Negredo (Manchester City) left footed shot from the centre of the box is blocked. Assisted by David Silva.
Offside, Manchester City. David Silva tries a through ball, but Álvaro Negredo is caught offside.
David Silva (Manchester City) wins a free kick in the defensive half.
Foul by Giorgos Karagounis (Fulham).
Substitution, Manchester City. Jesús Navas replaces Edin Dzeko.
Attempt missed. Steve Sidwell (Fulham) header from the left side of the six yard box misses to the left. Assisted by Ashkan Dejagah with a cross.
Offside, Manchester City. David Silva tries a through ball, but Aleksandar Kolarov is caught offside.
Foul by Edin Dzeko (Manchester City).
Steve Sidwell (Fulham) wins a free kick in the attacking half.
Goal! Fulham 1, Manchester City 2. Kieran Richardson (Fulham) left footed shot from the centre of the box to the bottom right corner. Assisted by Adel Taarabt.