河北省赤城县、丰宁县和滦平县接壤。
行政区划.截止2015年，怀柔区辖2街道，3地区，9镇，2民族乡。
地理概况.东部和西部分别与北京市密云区与延庆区相邻，北部毗邻河北省承德市所属的丰宁县，正南方与顺义区接壤，西南则同昌平区为邻。全区大部分地区（88.7%）属于燕山山区，东南角的怀柔镇、杨宋镇等地为平原地区属于华北平原的一部分。山区和平原的气温和水分都有较大差距。潮白河在区东南边界上与顺义区相隔，而北部山区汤河口镇附近有潮白河支流白河流经。怀河是区南部的