1917년 9월 13일 충청북도 진천군 출생으로, 1936년 경성 제2고등보통학교를 마치고, 일본으로 건너가 주오대학[中央大學]에서 1년을 수료했다. 1942년 만주 다퉁학원[大東學院]을 졸업했으며, 재학 중이던 1941년 만주 고등관 채용시험에 합격했다. 졸업 후 1943년 일본 고등문관시험 행정과에 합격했다.
1947년 청주상과대학 강사와 충청북도 인사처장 서리를 역임한 후, 정계에 진출해 1950년 제2대 국회의원에 당선되었고, 1956년까지 국회 예결위원장을 역임했다. 1954년 제3대 국회의원에 재선된 후, 민주당 정책위 부의장으로 활동했으며, 1960년 민중당 후보로 출마해 진천·음성 지역구에서 제6대 국회의원에 당선되었다. 이후, 9대와 10대 국회의원에 당선됨으로써 총 6선 의원이 되었다.
예산결산위원장을 4번 역임했으며, 민주당 정책위 부위장, 민중당 충북 제7지구당 위원장, APU 제2회 총회 한국대표, 민중당 정책심의회의장, 민중당 운영위원, 신민당 정무위원·정책심의회의장·전당대회의장·총재권한대행·최고위원 등을 역임했다.
정계은퇴 후, 1979년 변호사 사무실을 개업해 신한종합법률사무소 대표변호사로 활동했으며, 신한국도덕국민운동본부 총재, 국토통일문제 고문, 대한민국헌정회 이사 등을 지냈다. 2005년 9월 30일 사망했다.