본관은 함창(咸昌). 자는 경휴(景休), 호는 최와(最窩). 부여의 수천리(秀川里)에서 출생했다. 아버지는 김두찬(金斗燦)이며, 어머니는 함평이씨로 이우(李堣)의 딸이다. 처음 한원진(韓元震)에게 글을 배웠고, 한원진이 죽은 뒤에 윤봉구(尹鳳九)의 문하에서 수학했다.
이우보(李雨普)가 박세채(朴世采)의 신원소(伸寃疏)를 올리면서 윤봉구의 말을 인용한 것에 반대하여 항소(抗疏)를 올렸고, 윤봉구가 쓴 화양서원(華陽書院)의 원정비문(院庭碑文)에 대해 물의가 일어나서 원문이 수정되자 그것에 항의하여 시정을 요구했다.
이것이 세상에 유명한 ‘경인호통(庚寅湖通)’으로 호락시비(湖洛是非)의 발단이 되었다. 1774년(영조 50) 진사시에 합격하여 성균관에 입학하고, 이듬 해에는 『시남연보(市南年譜)』를 작성, 이어서 『송자대전(宋子大全)』을 간행하라는 왕명이 있자 송환기(宋煥箕)와 함께 교정을 담당하였다.
1778년 ‘경인호통’ 중에서 선정(先正)을 침욕한 사문득죄(師門得罪)로 체포되어 포옥(浦獄)에 수감되었다가, 이듬 해 어사 박우원(朴佑源)에 의해 홍산에서 조사를 받고 기성(岐城)으로 유배되었다.
변백서(辯白書)를 올려 무죄를 주장했으나 그것이 화근이 되어 2천여 리나 떨어진 이산(夷山)으로 옮겨져 갖은 고통을 겪었다. 1784년(정조 8) 정조의 특명으로 풀려나서는 후진의 교육에 전념했다. 경사(經史)에 조예가 깊어 학문연구에 많은 자료를 남겼다. 저서로는 『최와집(最窩集)』 8권이 있다.