원래 이 지방 북쪽에 소문국(召文國)이 있었는데, 신라가 2세기 말에 이를 병합하였다. 757년(경덕왕 16) 문소군으로 개칭되고 진보(眞寶)ㆍ비옥(比屋)ㆍ안현(安賢)ㆍ단밀(單密) 등을 영현(領縣)으로 하였다.
10세기 초 이곳은 군사상의 요지로서 왕건(王建)과 견훤(甄萱)의 쟁탈 장소가 되었다. 당시 이 지방의 호족 홍유(洪儒)가 왕건의 편을 들었다고 하여 의성부(義城府)가 설치되었다.
1143년(인종 21) 현령(縣令)을 파견하였는데, 1199년(신종 2) 민중봉기가 있어 감무(監務)를 두게 되었다. 한때 대구현(大丘縣)에 병합되었으나 곧 복구되었다.
조선 세종 때 의성ㆍ의흥(義興)ㆍ비안(比安)의 3현이 정립되어 오래 유지되었다. 1914년 행정구역 개편 때 비안군ㆍ의흥군을 병합하였다.
이 지역은 위치가 좋아 7방면(영덕ㆍ청송ㆍ안동ㆍ개령ㆍ비안ㆍ군위ㆍ의흥)으로 도로가 통하여 교통의 요지가 되었으므로 예로부터 철파(鐵破)ㆍ청로(靑路)의 2역과 남원(南院) 등 11원이 설치되었다. 고적으로는 고구현(高丘縣)과 소문국의 옛터가 남아 있다.