宁城县位于赤峰市南部,介于东经118°15′48″~119°24′50″、北纬41°17′08″~41°53′09″之间。北与内蒙古喀喇沁旗相连,东与辽宁省建平、凌源两县市交界,南与河北省平泉市毗邻,西与河北省承德县、隆化县接壤,素称“三省通衢”。距北京380公里、沈阳450公里、承德180公里、锦州港230公里、赤峰玉龙机场100公里,是内蒙古进京出海最近地区。
总面积4305平方公里,东西最长94公里,南北最宽64公里。地处内蒙古高原与松辽平原过渡带、大兴安岭南端与燕山山脉交汇处。地势西高东低,最高处为存金沟乡龙潭梁翠云峰,海拔1890.9米,最低处为五化镇南三十家子村南段河床,海拔459米,平均海拔832.6米。七老图山屏峙西侧,努鲁尔虎山由西南向东北逶迤延伸,老哈河、坤兑河由西南流向东北。西部山峦起伏、中部丘陵广阔、沿河平川狭长,构成了“五山四丘一分川”的地貌特征。