昔阳县位于山西省东境中部,隅于太行西麓的丛峦之中,地理坐标为东经113°20'-114°08',北纬37°20'-37°43'。东西长约70公里,南北宽约41公里,东与河北省赞皇县、内丘县、井陉县、邢台市接壤,西与寿阳县为邻,南与和顺县毗连,北与平定县相衔。 昔阳属太行山系,为典型的中低山土石山区地貌。山地丘陵面积占全县总面积的94%,大部分海拔在900米—1300米之间。最高点为东南部的白羊山1833米,最低点为松溪河出境处,海拔只有560米。整个地势西高东低,山多川少,沟壑纵横,崎岖不平。东部沟谷深切,山石矗立,基石裸露;中部切割较浅,山势缓和,粗骨土、岩石半分化物、黄土覆盖地表,是本县主要产粮区;西部地处沁水凹陷带,丘多坡缓,天然次生植被保存良好,为本县重要林区。境内主要有汾河、海河、南运河水系,境内共有大小河流10余条,主要河流有3条,分别是松溪河、潇河、清漳河。最长的河流和流域面积最大的河流是松溪河,属海河流域子牙河水系,潇河属黄河流域汾河水系,清漳河属海河流域南运河水系。昔阳地处温带、暖温带半干旱大陆性季风气候区。一年四季分明,冬季严寒,夏季炎热,春秋温暖。雨量分布不均,极易发生洪、旱灾害,水土流失严重。年平均气温9.3℃,平均降水量为571.9毫米,雨量主要集中在7-8月份,两月降雨平均342.9毫米,降水量占全年降水量60 %。