본관은 안동(安東). 자는 회부(晦夫), 호는 계산초로(溪山樵老). 김원행(金元行)의 증손으로, 할아버지는 김이직(金履直)이고, 아버지는 목사 김인순(金麟淳)이며, 어머니는 신식(申○)의 딸이다.
1828년(순조 28) 진사시에 주1, 음사(蔭仕)로 동몽교관(童蒙敎官)이 되었으며, 1833년 시제에서 수석하여 전시에 곧바로 응시할 수 있는 자격을 얻어 이듬해 식년 문과에 을과로 주2. 1835년(헌종 1) 규장각대교(奎章閣待敎)가 된 뒤 1837년 대사성, 1840년 이조참의, 1845년 우윤(右尹), 1847년 충청도관찰사, 1850년(철종 1) 이조참판 · 공조판서, 1851년 우참찬 · 대사헌, 다음 해에 이조판서와 홍문관대제학 · 선혜청당상, 1853년 병조판서, 1854년 형조판서 · 한성부판윤 등을 역임하였다.
당대 세도가의 출신으로서, 동생 김문근(金汶根)은 철종의 장인으로 영은부원군(永恩府院君)에 봉하여졌고, 두 아들 김병학(金炳學)과 김병국(金炳國)은 모두 정승에 올랐다. 철종 묘정(廟庭)에 배향되고 거제의 반곡서원(盤谷書院)에 배향되었다. 저서로는 『삼연선생연보(三淵先生年譜)』가 주3. 시호는 주4