Kastoria jest miastem leżącym w górach, nad pięknym jeziorem Orestiada. Zajmuje jego nadbrzeżną część oraz wąski, wcinający się w wodę półwysep. Znane jest z malowniczego starego miasta z licznymi zabytkami z okresu bizantyjskiego oraz możliwości uprawiania sportów wodnych.
Dzięki wykopaliskom archeologicznym wiadomo, że pierwsi ludzie w okolicach dzisiejszej Kastorii pojawili się ok. 5500 r. p.n.e. Mieszkali oni w domach na palach na wodach jeziora. W niewielkiej odległości od miasta można dziś oglądać park archeologiczny Dispilio, gdzie odtworzono wygląd takiej osady.
Starożytna historia Kastorii rozpoczyna się w IX w. p.n.e. Miasto znajdowało się pod panowaniem macedońskim i było ośrodkiem handlowym i rzemieślniczym. Na jego miejscu w czasach bizantyjskich stanęła twierdza oraz dzisiejsze stare miasto Kastorii. Do dziś przetrwało tu kilka świątyń z okresu od X do XIV w., z których najważniejsze to ozdobiony freskami kościół św. Kosmy i Damiana, kościół św. Szczepana, kościół Matki Bożej, w którym malowidła z XIV i XV w. zdobią zarówno wnętrze, jak i ściany zewnętrzne oraz stojący nad jeziorem klasztor Mavriotissa. Cenne zabytki bizantyjskie zobaczyć można w Muzeum Bizantyjskim.
W epoce nowożytnej Kastoria znana była z produkcji futer. Przemysł ten zaczął podupadać dopiero w końcu XX w. O tradycjach tych przypomina Muzeum Etnograficzne z kolekcją poświęcona kuśnierstwu, znajdujące się w domu jednego z najważniejszych XVII handlarzy futer.
Atrakcją Kastorii jest jej położenie nad Jeziorem Orestiada. Latem można tu uprawiać sporty wodne, a promenada pozwala na długie spacery z pięknymi widokami na okolicę. W sąsiedztwie miasta znajduje się też jaskinia Smoka znana z ładnej szaty naciekowej oraz podziemnych jeziorek.