아버지는 일본 육군장교 출신인 김준원(金埈元)이며, 초대 공군참모총장과 국무총리를 지낸 김정렬(金貞烈)의 동생이다.
서울 사직동에서 태어나 1931년 경기공립중학교를 졸업하고, 연희전문학교를 거쳐 일본 간사이대학[關西大學] 법과에 재학중 징집되어 일본 육군 예비사관학교를 수료하였다.
일본군 육군 소위로 함흥지구에 주둔하다가 광복을 맞이하였다. 광복 후 미군정청 총위부 정보국장대리를 역임하였으며, 항공부대 창설을 역설하다가 여의치 않자 1947년 직책과 부위(副尉)의 계급을 내놓았다. 공군창설 7인의 간부 가운데 한 사람으로 1948년 5월 조선경비사관학교를 졸업하고 육군 소위로 임관, 항공부대 간부로 일하였다.
1949년 공군이 독립되면서 공군으로 전출하여 공군비행단 참모장에 보임되었다. 1951년 공군 대령으로 진급했다. 6·25전쟁 초기 제10전투비행단장을 지내며 F-51(무스탱)기로 30회 이상 출격했다. 1951년 8월 해인사 폭격 명령을 거부하여 해인사의 팔만대장경을 보존하는 데 공을 세웠다. 1951년부터 1952년까지 미공군대학에서 항공작전에 관한 교육을 이수한 뒤 귀국하여 1953년 공군 10전투비행단 초대 단장에 취임하여 동부전선의 한국지상군에 대한 근접 항공지원작전과 후방 차단작전을 지휘하였다.
1953년 준장으로 승진하여 제1전투훈련 비행단장이 되었으며, 1954년 3월 5일 F-51(무스탱)기로 사천기지(泗川基地)를 이륙하여 강릉기지로 향하던 중 기상악화로 동해안 묵호상공에서 실종되었다. 6·25전쟁 때 을지훈장·금성충무훈장·금성을지무공훈장·미비행훈장(美飛行勳章) 등을 받았으며, 1954년 대통령수장·미공로훈장(美功勞勳章) 등이 추서되었다.