Η Καστοριά σαν πόλη, υπήρχε στο χάρτη τουλάχιστον από τον 6ο αιώνα. Το όνομά της όμως το πήρε στα τέλη του 10ου αιώνα και λέγεται πως αυτό προέρχεται από τους κάστορες. Η Καστοριά πιστεύεται ότι έχει αρχαία προέλευση. Έχει ταυτιστεί με την αρχαία πόλη Κέλετρον, που πιθανώς βρίσκεται σε ένα λόφο πάνω από τη σημερινή τοποθεσία της πόλης, και κατελήφθη από τους Ρωμαίους το 200 π.Χ.. Η ιστορία της Καστοριάς ήταν ειρηνική μέχρι τον 10ο αιώνα, όταν η στρατηγική της θέση την οδήγησε σε αμφισβήτηση μεταξύ της Βυζαντινής Αυτοκρατορίας και της Α' Βουλγαρικής Αυτοκρατορίας. Γύρω στο 1385, η Οθωμανική Αυτοκρατορία κατέλαβε την Καστοριά και την κράτησε μέχρι τον Α' Βαλκανικό Πόλεμο, το 1912, όταν την κατέλαβε η Ελλάδα. Τόσο κατά τη διάρκεια του Β' Παγκοσμίου Πολέμου όσο και του ελληνικού εμφυλίου πολέμου, η πόλη υπέστη επανειλημμένες μάχες, που ως αποτέλεσμα είχαν σοβαρές ζημιές. Στα τέλη Μαρτίου 1944, υπό τη ναζιστική γερμανική κατοχή κατά τη διάρκεια του Β' Παγκοσμίου Πολέμου, 763 Εβραίοι της Καστοριάς αιχμαλωτίστηκαν από τα ναζιστικά στρατεύματα και στάλθηκαν στο Άουσβιτς-Μπίρκεναου.
