전라남도 광양군에서 태어나 만주국 펑톈에 있는 중앙육군훈련처를 제3기로 졸업하고 만주국 군인이 되었다. 태평양 전쟁 중 만주군 소좌까지 역임했다.

태평양 전쟁 종전 후에 귀국하여 미군정 하에서 국립경찰전문학교 교장에 임명되었고, 경상북도 철도경찰청장, 충청남도 철도경찰청장, 경무부 공안국장 등을 역임하며 경찰계에 투신했다. 제주 4·3 사건 당시 경무부 공안국장을 맡고 있어 경무부장 조병옥과 함께 이 사건의 주무 담당자 중 한 명이었다.

이후 105여단장, 전남지구병사구 사령관, 전북계엄민사부장, 전북지구병사구 사령관, 106사단장 등을 역임하였으며, 육군본부 병무감과 대한민국 국방부 제2국장, 합동참모본부 제1부부장, 제3부부장을 지냈다.

육군 준장으로 예편한 뒤 고향인 광양에서 자유당 후보로 당선되어 제3대 민의원의원으로 등원했다. 군사 부문 전문가로 평가받았으나 크게 눈에 뜨이는 의정 활동은 보여주지 못했다.

2008년 민족문제연구소가 친일인명사전에 수록하기 위해 정리한 친일인명사전 수록예정자 명단 군 부문에 포함되었다.
제주 4.3사건 당시 조병옥의 직책은?
경무부장