본관은 청풍(淸風). 자는 공회(公晦). 아버지는 이조참의 김경선(金景善)이다.
1838년(헌종 4) 정시 문과에 병과로 급제한 뒤 1840년 한림소시(翰林召試)에 선발됨으로써 출사하였다.
1842년에 평안도암행어사가 되어 숙천(肅川)·삼화(三和)·개천(价川)·순천(順川)·맹산(孟山) 등지의 탐관오리들을 숙청하여 민심을 안정시켰다.
그 뒤 이조참의·대사성·이조참판을 역임하고, 고종조에 들어와서는 형조·예조·공조의 판서를 차례로 역임, 정계의 중요인물로 부상하게 되었다.
또한, 1869년(고종 6)에는 동지 겸 사은정사(冬至兼謝恩正使)가 되어 청나라에 다녀왔다. 그 뒤 광주부유수(廣州府留守)·한성부판윤·홍문관제학을 역임하였다. 시호는 문정(文靖)이다.