강원도 북부에 있는 군. 동부는 문천시ㆍ동해, 남부는 법동군ㆍ평안남도 양덕군, 서부는 함경남도 수동구, 북부는 함경남도 금야군ㆍ고원군과 접해 있다. 서남(동흥리)~동북(염전리) 간의 길이는 42km이고, 북서(화라노동자구)~남동(인흥리) 간의 너비는 11km이며, 군 면적은 362.45㎢로서 도 전체면적의 3.27%를 차지한다. 현재 행정구역은 1읍 3구 15리로 구성되어 있으며 군 소재지는 천내읍이다.
1952년에 문천군 천내면과 명구면의 일부ㆍ운림면의 일부를 통합하여 신설한 군으로서 이 지역의 중심을 이루는 천내면의 이름을 따서 천내군이라고 하였다. ‘천내’라는 지명은 1930년 전후하여 쓰기 시작하였는데, 조선 말에 있던 문천군 도사면 내동리(혹은 내안)에서 유래되었다.
내동(內洞)은 안골을 한자로 표기한 지명인데, 후에 두 개울의 안쪽에 위치해 있으므로 내 ‘천(川)’자와 안 ‘내(內)’자를 따서 천내라고 하였다.
천내군 지역은 오랫동안 함경남도 문천군의 지역에 속해 있다가, 1946년 9월부터 강원도 문천군의 지역에 속해 있었다. 1952년 군면리 대폐합에 따라 문천군 천내면(川內面)의 대부분과 명구면(明龜面)의 일부·운림면(雲林面)의 일부를 병합하여 강원도에 천내군을 신설하였다.
1953년에 구덕리가 회복리에, 문천군 송죽리(松竹里) 일부가 장풍리에, 고원군 원봉리(圓峯里) 일부가 용루리에, 천내군 구포리 일부가 함경남도 고원군 하평리(下坪里)에 각각 편입되었다. 1961년에 신산리를 신산노동자구(新山勞動者區)로 승격하였고, 신흥리 일부가 천내읍에 편입되었다. 1972년 7월에 문천군의 삼화리(三和里)·송죽리(松竹里)·신송리(新松里)·덕흥리(德興里)·석전리(石田里)가 이관되었고, 같은 해 11월에 용담리가 용담노동자구(龍潭勞動者區)로 승격되었다. 1974년 5월에 함경남도 고원군의 풍남리(豊南里)·전탄리(箭灘里)·원봉리(圓峯里)·송흥리(松興里)가 편입되었고, 천내군의 석전리·덕흥리가 원산시에 이관되었다.
1976년 6월에 삼화리·송죽리·신송리가 다시 문천군에 귀속되었으며, 1981년 8월에 풍남리·전탄리·원봉리·송흥리가 함경남도 고원군에 편입되었다. 1991년 11월에 수치리를 대양리(大洋里)로 개칭하였다. 2003년 현재 행정구역은 1읍(천내읍), 3구(용담노동자구, 신산노동자구, 화라노동자구), 15리(구포리, 금성리, 당치리, 대양리, 동흥리, 노운리, 용루리, 승전리, 신암리, 신흥리, 염전리, 인흥리, 장풍리, 풍전리, 회복리)로 구성되어 있다. 천내군 소재지는 천내읍이다.