Fulham threw away the lead three times at Craven Cottage as Aston Villa grabbed a point from a pulsating clash.
Two goals from Brian McBride and a Heidar Helguson penalty put Fulham in control, but Villa hit back every time as Luke Moore's strike was added to by a Liam Ridgewell brace.
The Midlanders arrived in London on the back of a 4-0 win over Everton and could have opened the scoring after just eight minutes.
Milan Baros broke down the right and squared the ball to strike partner Moore, but he blasted his shot over the bar from 12 yards.
Fulham were unbeaten in their past four home games, and on 13 minutes they showed why with a super goal.
Luis Boa Morte won the ball in midfield and released Tomasz Radzinski on the left side of the box. The Canadian delivered a perfect floated cross and McBride arrived unmarked to head home past Thomas Sorensen.
The goal left Villa stunned, but five minutes later they almost hit back. Wilfred Bouma fired in a long-range drive which deflected off Liam Rosenior and spun inches over the bar.
Eventually Villa found a way through after Liam Rosenior gave the ball away. Baros quickly slipped a throughball towards Moore, who hammered a shot across Mark Crossley and into the far corner.
They were level for only a minute though, before Fulham were awarded a debatable penalty. Mark Delaney was judged to have chopped down Radzinski as he ran through on goal, and referee Andy D'Urso pointed to the spot after being over-ruled by his assistant.
It was a harsh decision, but Helguson stepped forward to send Sorensen the wrong way with a cheeky spot-kick.
Despite their fury, Villa drove forward and Gavin McCann was guilty of missing a great chance on 34 minutes. James Milner delivered a deep cross and the combative midfielder managed to hit the post from a yard out as he stuck out a leg in hope.
Helguson was denied his second goal of the game on 56 minutes as Sorensen saved at his feet after a neat pass by Dean Leacock.
David O'Leary's men continued to push on, and got their reward on 60 minutes. Ridgewell stole in at the near post to meet a cross from Milner and poked the ball beneath Crossley.
The travelling Villa fans celebrated madly - but once again their cheers were cut short as Fulham hit straight back.
This time there was no controversy, as Boa Morte won the ball and delivered a deep cross which McBride headed brilliantly into the top corner.
The game was still not dead and Villa hit their third equaliser of the evening after 76 minutes.
Moments after Ridgewell's header had bounced down off the bar, Milner crossed into the box and the Villa centre-back tucked away his second of the night to salvage a point.
McBride hit a half-volley wide in injury-time and Villa boss O'Leary breathed a huge sigh of relief.