Ivan Klasnic's second goal in a week combined with a thoroughly assured defensive display saw Bolton Wanderers book their place in the sixth round of the FA Cup at the expense of Fulham at Craven Cottage.
The Croatian reacted quickest to pounce on a loose ball inside the Fulham penalty area midway through the first half to smash home the decisive goal in a thoroughly entertaining affair in the capital.
In truth Wanderers created a hatful of second half chances and could have edged their fellow Premier League counterparts out by more than the solitary goal despite a late rally from the home side.
One final bonus came in the shape of Wanderers' fifth clean sheet in six games following a number of pleasing performances from all involved.
Manager Owen Coyle made three changes to the starting line-up that had previously seen off Wigan in the midweek tie. Skipper Kevin Davies returned to the starting XI in place of Johan Elmander who was on the bench, whilst Paul Robinson was shifted to the right-back role following the injury to Sam Ricketts. Marcos Alonso started at left-back whilst Stuart Holden came in for Mark Davies.
The early throes of the game saw both sides sizing one another up somewhat, as the Whites weaved pretty patterns without any real penetration in the final third. Indeed the first chance of the game came the way of the hosts when a seemingly aimless punt forward found its way to Mousa Dembele who forced Adam Bogdan to thrust out a boot and divert his shot away from goal.
Wanderers' first attempt on goal of note saw Holden fizz an effort narrowly wide of Mark Schwarzer's goal after clever link-up play involving Klasnic.
And the Croatian international, who had scored in the midweek triumph over Wigan and at Craven Cottage last season, was again in the thick of the action on the 20 minute mark firing Wanderers into a first-half lead. In typical predatory fashion, Klasnic reacted quicker than anyone to superbly adjust his body and fire low past Schwarzer's despairing dive after Fabrice Muamba's driven cross from the right had cannoned off a defender.
In truth there was little to choose between the two sides but the Whites had more than matched their Premier League counterparts as a sense of frustration began to creep into both the home fans and their side.
Bogdan's fellow Hungarian Zoltan Gera hammered a shot over the crossbar from distance whilst Clint Dempsey dragged an effort narrowly wide of the foot of the post.
Fulham continued to press and probe but some inspired defending, especially from central defensive pairing Gary Cahill and David Wheater, meant that Wanderers went into the half-time break with a goal lead.
That break gave Wanderers priceless time to regroup and Coyle's men began the second half with a much more assured look. Fulham continued to pepper Bogdan's goal, with Dembele and Dempsey both trying their luck from distance but Wanderers continued to hold strong.
Steve Sidwell rifled one down the throat of Bogdan just before the hour mark prior to which a superb defensive header from Robinson denied Dempsey at the back post.
The home crowd continued to grow more and more agitated and an off the ball scuffle between Petrov and Chris Baird didn't help matters. Referee Stuart Attwell was the main target of the boos that began to ring around Craven Cottage as Wanderers continued to frustrate the home side.
Whilst Fulham were going in search of an equalising goal Wanderers looked dangerous on the counter-attack. A flowing move saw Muamba fire wide from distance whilst Davies was denied by a last ditch tackle after Petrov had hared away from his marker down the left flank.
Klasnic was next to go close for the Whites as forcing Schwarzer into a smart save following a slaloming run down the right from Chung-Yong Lee, as the game opened up into a truly pulsating affair.
Petrov stung the palms of Schwarzer as Wanderers continued to look the more likely to add to the scoring.
For all Fulham's endeavour they continued to be frustrated and despite a late rally, it was to be the Wanderers fans who left Craven Cottage in the knowledge that their side would face Birmingham City in the sixth round.
Fulham: Schwarzer, Hughes, Hangeland, Baird, Salcido, Gera (Zamora 67), Sidwell, Murphy, Dempsey, Dembele, Johnson (Unused substitutes: Stockdale, Kelly, Pantsil, Kamara, Etuhu, Greening)
Wanderers: Bogdan, Robinson, Cahill, Wheater, Alonso, Chung-Yong, Muamba, Holden, Petrov, Klasnic (Elmander 79), K Davies (Unused substitutes: Jaaskelainen, Taylor, Rodrigo, Blake, Cohen)