Since Russia's invasion Ukrainian airspace is closed to civilian aviation, so the practical routes are overland.
From Poland. The nearest entry points are by train or bus via Lviv. The overnight train from Przemyśl (the Polish border town) reaches Lviv in around five hours, then a connecting train to Ivano-Frankivsk takes another two and a half hours. By bus, FlixBus and a number of Ukrainian operators run direct from Warsaw and Kraków to Lviv and onward to Ivano-Frankivsk.
Within Ukraine. Regular Intercity trains link Kyiv, Lviv, Chernivtsi and Odesa with Ivano-Frankivsk; the Lviv connection is the most useful for foreign travellers. The Ivano-Frankivsk railway station sits on the eastern edge of the centre — a 15-minute walk or short marshrutka ride to the Rynok.