Numele vechi, de origine iraniană, al acestui oraș a fost Paktra, apoi scriitori l-au numit Bactria iar limba vorbită era cunoscută sub numele de bactriană, iar după invazia arabă în secolul al VII-lea a ajuns să se numească Balkh. Din acest oraș a pornit marele profet Zarathushtra în răspândirea mesajului său, transformând orașul într-un centru spiritual. Un alt motiv pentru care acest oraș era considerat sacru era existența unui templu dedicat zeiței antice iraniene Anahit sau Anahita, despre care se cânta în imnurile Avesta.
Primele atestări ale orașului datează din jurul anilor 500 î.Hr. Primii locuitori ai orașului erau, în mare parte, sciiți. Se pare că triburile de arieni care au ajuns în Balkh mai târziu și au preluat controlul, au format o aristocrație militară asupra populației native mai puțin avansată tehnologică – la fel cum a fost în cazul grecilor, romanilor sau galilor. Acești oameni duceau vieți simple, fără să aibă parte de luxul cu care era „răsfățat” restul Imperiului Persan.
De-a lungul istoriei sale de 2500 de ani, mai ales datorită poziției geografice, Balkh a avut parte de un număr vast de cotropitori. Astfel, în jurul anului 330 î. Hr., Alexandru cel Mare a capturat orașul, astfel a devenit capitala satrapiei (provincie persană) grecești numite Bactria. Următoarele secole a căzut în mâinile mai multor popoare nomade, cum ar fi turcii, până când a fost cucerit definitiv de către arabi în secolul al VIII-lea. Arabii, impresionați de bogăția și vechimea orașului, l-au supranumit „Umm-al-belad”, sau „mama tuturor orașelor”. Atunci când drumul mătăsii era principala arteră de comerț între vest și est, Balkh nu avea seamăn – era localizat la intersecția dintre est-vest (între China și Asia Minor), dar și ruta nord-sud între Merv și alte ținuturi mai nordice și India în sud.
Ruta care trecea prin Balkh era cea preferată de către călători și comercianți, deoarece era mai scurtă și mai oferea un traseu mai facil prin Hindu Kush. Însă după cotropirea adusă de mongolii conduși de Ghenghis Khan, orașul a fost atât de devastat, încât nu a mai putut reveni niciodată la gloria de altă dată și, într-un final, s-a transformat într-un sat, iar guvernanții s-au mutat în orașul Mazar-e-Sharif. Balkh a devenit parte din Afganistan în 1850.
Balkh, satul contemporan nouă, este situat între ruine vaste, printre care cele mai proeminente fiind zidurile de apărare ale orașului antic Bactria, cu mai mult de 11 kilometri în circumferință. Alte rămășite din gloria trecută a orașului Balkh sunt locurile de rugăciune budiste și mai tardivele altare și moschee islamice, printre care altarul lui Khvājeh Abū Naṣr Pārsā iese în evidență.