본래 백제의 결기현(結己縣)이었는데, 757년(경덕왕 16)결성군(潔城郡)으로 고치고 신읍(新邑)ㆍ신량(新良) 등을 영현(領縣)으로 하였다. 1018년(현종 9)운주(運州)에 속하였고, 1172년(명종 2)결성(結城)으로 고치고 감무(監務)를 두었다.
1413년(태종 13) 현감을 두었으며, 1733년(영조 9)보령(保寧)에 속하였다가 1736년 복구하여 현이 되었다. 1895년(고종 32) 홍주부 결성군, 1896년충청남도 결성군이 되었으며 1914년 행정구역개편에 따라 홍성군에 병합되어 결성면이 되었다.