La Croatie a une forme particulière qui ressemble à un croissant ou un fer à cheval, ce qui explique qu'elle ait des frontières avec de nombreux pays : la Slovénie, la Hongrie, la Serbie, la Bosnie-Herzégovine, le Monténégro, et une frontière maritime avec l'Italie dans la mer Adriatique. Le bout de son territoire continental est divisé en deux parties non contiguës par le port de Neum en Bosnie-Herzégovine.
Le relief est assez diversifié et comprend :
des plaines, des lacs et des collines dans la partie nord, nord-est (Croatie centrale et Slavonie, une partie de la plaine pannonienne) ;
des montagnes très boisées dans le Lika et la Gorski Kotar qui font partie des Alpes dinariques ;
un littoral rocheux le long de la mer Adriatique (Istrie, littoral nordique et Dalmatie).
Il y a plusieurs climats en Croatie. La partie nord-est du pays est de climat continental alors que le climat du littoral est de type méditerranéen, et que celui de la partie centrale et sud est montagneux.