That's three groups of people, none of whom held it. Persians never held it, Macedonians never held it after Alexander the Great died and the Arabs never held it, although the Islamic ideology has persisted.
Yes, all three (and more) did in fact hold A-stan???
Persia turned it & the neighboring regions into a bunch of satrapies between the reign of Darius I and the collapse of the Achaemenid Empire at Alexander's hands, an approximately 200 year period,
then some time later the Sassanids came & returned the whole area under Persian rule for another 400 years.
The Greeks' local successor kingdom post-Alexander there persisted for a similarly lengthy period of time and even survived wars with China while the latter was approaching the peak of their power under the Han Dynasty (
they went on to retreat & rule over large parts of modern Pakistan and NW India after coming under nomadic pressure from the north). And the Arabs, as in the Rashidun and Umayyad Caliphates, never conquered Afghanistan in full themselves; that was done by the Islamified Turkic Ghaznavid and Tajik Ghurid dynasties, which did last several centuries each. The Mongols also conquered it fully and held it for like 300 years, it was one of the core territories of the Timurid Empire & the launchpad of Babur's conquest of India (Kabul itself was his capital before defeating the Delhi Sultanate).
And shit has changed since 300 BC. No modern nation has held Afghanistan, invading Afghanistan is usually the death rattle for any empire.
This would depend on how you define 'holding' Afghanistan. If you mean fully conquering and occupying the place, installing direct rule from abroad, etc. then the Persians have the best record, they were doing that as late as the Afsharid dynasty in the 1700s (the Afghans actually briefly conquered most of Persia itself under the Hotak dynasty, but then the Afsharids overthrew the Hotakis and chased them all the way back to A-stan to finish them off, then used A-stan as the launchpad for their ridiculously lucrative invasion & pillaging of India).
If you mean just installing a reasonably quiet & compliant client government, the British succeeded at doing that as late as the early 20th century, when they buckbroke the Afghans for the final time right after WW1 (Afghan nationalists like to cope & sneed about how they technically won that one b/c the Bongs didn't conquer them utterly, but the British never wanted to do that - their actual war aims of reaffirming the Durand Line border and getting out of paying bribes to Afghanistan's government for peace & compliance were achieved in the peace treaty, and the Brits went on to maintain significant influence over the Afghan gov't until the end of the Raj anyway).
Generally speaking, since the decline of the Silk Road there hasn't been much point to holding Afghanistan directly and the country's usually a hot mess of squabbling tribes with constant revolts & civil wars, so Great Powers haven't bothered; installing a client regime that doesn't cause too much trouble has since been the much preferred way of dealing with A-stan. Its reputation as the graveyard of empires is grossly exaggerated, not only did more empires throughout history succeed at taking it over than not, but they've pretty much always fallen due to reasons that have nothing to do with Afghanistan (going as far back as the Persians, who were obviously toppled by the Macedonians in their Achaemenid incarnation and then the Muslim Arabs in their Sassanid one, and the Greco-Bactrians, who got crushed & driven into India by Saka & Yuezhi nomads from the north, not rebellions by the native Afghans).