본관은 연안(延安). 아버지는 공조판서 김남수(金南秀)이며, 어머니는 길씨(吉氏)이다.
무과에 급제하여 1407년(태종 7) 경시서령이 되고 1413년 감찰을 거쳐, 1414년 호군에 임명되었다.
1419년(세종 1) 경상우도병마사가 되고, 1422년 상호군으로서 함길도조전첨절제사(咸吉道助戰僉節制使)가 되어 경원(慶源)에서 오랑캐의 침입에 대비하였다. 1426년 충청좌도도만호(忠淸左道都萬戶)가 되고, 1433년 도진무(都鎭撫)로서 조전절제사(助戰節制使)가 되어 파저강(婆猪江)의 야인 정벌에 공을 세워 중추원부사에 임명되고, 이듬해 충청도처치사(忠淸道處置使)가 되었다.
1436년 병조참판을 거쳐, 1442년 함길도병마도절제사가 되고, 1447년 병조판서에 올랐다. 1450년 문종이 즉위하자 지중추원사가 되어 사은부사로 명나라에 다녀왔고, 1453년(단종 1) 판중추원사가 되었다
이해 수양대군(首陽大君)이 황보인(皇甫仁)·김종서(金宗瑞) 등을 제거하는 계유정난을 일으켰을 때, 도진무판중추원사로서 적극 협력한 공으로 정난공신(靖難功臣) 1등이 되고, 연산군(延山君)에 봉해졌다.
어릴 때부터 효성이 지극하여 짝을 지어 날아드는 비둘기를 보고 별거하는 부모를 생각하며 울었다고 한다. 시호는 양효(襄孝)이다.