Chelsea have beaten Arsenal two-one at Stamford Bridge, keeping alive their hopes of catching Barclays Premier League leaders Manchester United.
Bacary Sagna, who later went off injured, headed the Gunners in front from a near-post corner on the hour.
But Drogba netted twice in eight minutes to turn the game around and move the Blues above Arsenal into second place, but still five points behind United, who have yet to come to Stamford Bridge.
Sagna was eventually replaced by Abou Diaby, before Chelsea drew level through Drogba when he lashed home a loose ball at the edge of the Arsenal box, following a knockdown by Frank Lampard after 73 minutes.
Walcott was introduced for van Persie as the game entered its final quarter-of-an-hour.
Drogba capitalised on some poor defending from Toure to hook in a deep cross into the box after a knock-on from Anelka, and win it with just nine minutes left.
A fine low save from Almunia to deny Drogba a hat-trick prevented it being worse for the faltering Gunners, who have now not won in their last five league games.