Der Burgfelsen, der das ganze Tal dominiert, wurde vermutlich schon im 3. Jahrhundert v. Chr. besiedelt. Erstmals mit Mauern befestigt wurde die Anlage im 6. Jahrhundert, als andere Orte im Drino-Tal wie Antigoneia langsam an Bedeutung verloren.
Die erste schriftliche Erwähnung von Argyrokastro stammt aus dem Jahr 1336 als Teil des Byzantinischen Reichs. Zwischenzeitlich hatte sich langsam eine Siedlung rund um die Burg gebildet. 1417 wurde Gjirokastra von der Armee des Osmanischen Reichs erobert. Die beherrschende Familie blieb aber weiterhin die Zenevisi, die bald nach der türkischen Eroberung zum Islam übergetreten waren. Ende des 16. Jahrhunderts waren die Christen noch immer in der Mehrheit. In einem Defter von 1583 wurden knapp 80 muslimische und über 230 christliche Haushalte gezählt. Im Laufe des 17. Jahrhunderts kehrte sich dieses Verhältnis. 1419 erklärten die Osmanen Gjirokastra zur Hauptstadt des Sandschak von Albanien. 1466 verlor die Stadt diese Funktion an Berat. 1432 gab es eine antiosmanische Revolte der Bevölkerung, die im Jahr darauf von Turahan Bey niedergeschlagen wurde.
Nach den Steuerregistern von 1431/32 hatte Argiri, wie die Stadt auf Türkisch nun genannt wurde, insgesamt 163 Häuser. 1583 wurden bereits 434 Häuser gezählt. Das rasante Wachstum lag vor allem an der Landflucht und der Funktion als administratives Zentrum. Obschon die Stadt 1466 den Status als Hauptort des Sandschaks an Berat verlor, blieb sie Sitz des Gerichts (kadi). 1670 zählte der osmanische Reisende Evliya Çelebi über 2000 Häuser. In seinem Reisebuch, dem Seyahatnâme, beschrieb er detailliert die Stadt. 1811 konnte Tepedelenli Ali Pascha die Stadt seinem Herrschaftsgebiet eingliedern, bis Sultan Mahmud II. 1822 Gjirokastra wieder zurückeroberte, nachdem Ali Pascha einem Mordanschlag zum Opfer gefallen war. Während der Herrschaft des Paschas wurde die Burg stark ausgebaut und auch ein zehn Kilometer langer Aquädukt errichtet. Er stellte die Wasserversorgung der Burg sicher, wurde aber 1932 zerstört.
Nach der italienischen Invasion in Albanien im April 1939 bezogen italienische Truppen in Gjirokastra Quartier. Die Italiener verfolgten das Ziel, Griechenland zu überfallen. Nach Beginn des Zweiten Weltkriegs starten sie im Oktober 1940 den Griechisch-Italienischen Krieg, der für sie jedoch zum Desaster wurde. Nach anfänglichen Erfolgen traten die Griechen zur Gegenoffensive an und nahmen Anfang Dezember 1940 Gjirokastra ein. Im April 1941 wendete sich das Blatt, nachdem die Wehrmacht im Balkanfeldzug Griechenland besetzte. Gjirokastra blieb bis 1943 in italienischer Hand und wurde nach der Kapitulation Italiens im September 1943 von der Deutschen Wehrmacht besetzt. Im Verlauf des Zweiten Weltkriegs wurde die Stadt auch aus der Luft angegriffen, wobei durch die Bomben viele Menschen ihr Leben verloren. Nach der Machtergreifung der Kommunisten rief der in Gjirokastra geborene Anführer Enver Hoxha (1908–1985) zu Kriegsende die Sozialistische Volksrepublik Albanien aus. Während der sozialistischen Geschichte der Stadt setzte die Industrialisierung ein, und Gjirokastra wurde zu einem überregionalen Handelszentrum. Die kommunistische Regierung erklärte sie 1961 zur „Museums-Stadt“.[7] Dadurch entging das Stadtbild einer radikalen Veränderung. Seit dem Zusammenbruch des kommunistischen Regimes Anfang der 1990er Jahre leidet die Stadt unter einer starken Auswanderung. Insbesondere griechischstämmige, aber auch viele ethnische Albaner haben das Land verlassen. Die Unruhen gegen die Regierung im Jahr 1997 waren in Gjirokastra besonders heftig. 2005 erklärte die UNESCO das historische Zentrum von Gjirokastra zum Weltkulturerbe.