평안남도 북동부 대동강 상류지역에 있는 군. 서부는 영원군ㆍ자강도 동신군, 남부는 함경남도 요덕군, 동부는 함경남도 영광군ㆍ함주군ㆍ정평군, 북부는 자강도 용림군ㆍ함경남도 장진군과 접해 있다. 동서(흑수리~인룡리) 간의 길이는 31km이고, 남북(도흥리~낭림리) 간의 길이는 57km이며, 면적은 약 1,232.6㎢로서 도 전체면적의 9.96%를 차지하는 가장 큰 군이다. 현재 행정구역은 1읍 1구 16리로 구성되어 있으며 군 소재지는 대흥읍이다.
1952년 행정구역 개편 시에 군을 새로 내오면서 군 소재지가 위치해 있는 대흥면(大興面)의 이름을 따서 대흥군이라 하였다. ‘대흥면’은 1914년 행정구역 폐합 시에 태백면(太白面)과 장흥면(長興面)을 병합하여 신설한 면으로서 태백면에서 ‘태(太)’자를 따서 ‘대(大)’자로 바꾸고 장흥면에서 ‘흥’자를 따서 지은 이름이라 한다.
1954년 10월 대흥군이 함경남도에 소속되면서 용대리, 청산리, 순호리, 온양리, 회양리, 신흥리를 영원군에 이관하였다. 1956년 9월 창장리가 운흥리와 창현리에 분리 편입되면서 폐지되어 1읍 17리를 관할하였다. 1961년 3월 경수리가 경수노동자구로 승격되었고, 1972년 11월에 대흥군이 다시 평안남도에 소속되었다. 2003년 현재 행정구역은 1읍(대흥읍), 1구(경수노동자구), 16리(광통리, 금성리, 대동리, 덕흥리, 도흥리, 낭림리, 용평리, 문삼리, 복흥리, 소백리, 신남리, 운흥리, 인룡리, 창현리, 평화리, 흑수리)로 구성되어 있다. 대흥군 소재지는 대흥읍이다.