Sofia liegt in der Nähe zu Serbien und grenzt an das Gebirge "Witoscha". Der Fluss Iskar fließt ebenfalls durch die Stadt.
Der Flughafen von Sofia liegt ca. 10 km östlich der Stadt am Autobahnring und ist der wichtigste und größte in Bulgarien. Der Flughafen teilt sich in zwei Terminals, welche mit einem kostenlosen Shuttle-Dienst (Minibusse) verbunden werden.
Die Fahrt nach Sofia ist mit einem Taxi möglich, welche seitlich der beiden Terminals stehen. Die Preise findet man auf einem Aufkleber am Auto. Die Nutzung von Privaten Taxiunternehmen sollte man vermeiden.
Die günstigere Variante nach Sofia zu gelangen ist der öffentliche Busverkehr. Die Buslinie 84 verkehrt zwischen dem Flughafen Sofia und der University von Sofia, täglich von 5.00 Uhr bis 23.00 Uhr. Ein Ticket kostet ca. 0,50 Euro und kann bequem am Busterminal gekauft werden. Wenn das Gepäck größer als 60*60*40 cm betragen sollte, muss man ein extra Ticket lösen (0,50 Euro).
Von vielen europäischen Ländern bestehen Bahnverbindungen nach Bulgarien. Sofia ist der wichtigste nationale Eisenbahnknotenpunkt mit acht Bahnhöfen und internationalen Verbindungen in viele Länder.