Bosnia-Hercegovina er et fjelland, kun åtte prosent av landet ligger lavere enn 150 meter over havet. I vest domineres landskapet av karstfjell (Dinariske alper) som hovedsakelig løper i retning nordvest–sørøst, avbrutt av karakteristiske poljer. I midtre deler ligger det skog- og mineralrike Bosansko rudogorje (Bosniske malmfjell), som i Maglić når opp i 2386 meter over havet. Fjellandet dreneres av Neretva og av Sava med bielvene Una, Vrbas, Bosna og Drina; for karstområdenes vedkommende ved underjordiske elveløp.
En kupert region danner i nord overgangen mellom fjellandskapet og det fruktbare slettelandet langs Sava. Mot Adriaterhavet finnes en 24,5 kilometer lang kystlinje uten havner.
Bosnia-Hercegovina har middelhavsklima nærmest adriaterhavskysten, mer temperert i innlandet.