본관은 안동(安東). 자는 경소(景召), 호는 오천(梧泉). 김상헌(金尙憲)의 후손이다.
1860년(철종 11) 정시문과에 병과로 급제, 종친부(宗親府) 벼슬을 거쳐 사과(司果) · 전적(典籍) 등을 역임하였다. 홍문관의 관직을 지내고, 지평(持平) · 장령(掌令) · 사성(司成) · 사간(司諫) 등 요직을 두루 거쳤다.
그 뒤 호조 · 형조 · 병조 · 이조의 참의에 이어 한성부의 좌 · 우윤과 호조 · 이조 · 형조 · 공조의 참판, 형조판서 · 의정부좌참찬 · 광주부유수 및 삼도육군통어사 등을 지냈다.
1896년 궁내부 특진관에 이어 비서원경(秘書院卿) · 장례원경(掌禮院卿) · 귀족원경(貴族院卿) 등을 거쳐 1901년 판돈녕부사(判敦寧府事)에 이르렀다.
1905년 을사조약이 강제로 체결되자 다음 해 1월 23일 오적신(五賊臣)을 처형할 것을 상소했다. 상소문에서 김석진은 협박에 의한 조약은 공법상 폐기가 가능하니 외부대신을 불러 여러 외국 공사에게 성명을 내고, 매국 역도들을 죽여서 국헌을 바로잡고 인민을 생지옥에서 구하라고 청하였다.
왕의 승낙이 떨어지지 않고 날짜만 지연되자 다시 상주. 매국노들과 한 하늘로 머리를 들고 다닐 수도 없는데 하물며 어깨를 나란히 하고 한 줄에 설 수 없으니 의효전향관(懿孝殿享官)의 직을 물러나겠다고 하였다. 당시 향관의 줄에 오적의 한 사람인 이지용(李址鎔)이 있었기 때문이다.
조병세(趙秉世)가 조약에 반대, 순사하자 조문길에 남대문 근처 한 점포에서 아편을 산 김석진은, 다시는 대궐에 들어가지 않고 나라를 위해 죽기로 결심하고 기회를 보고 있었다.
1910년 우리나라를 병탄한 뒤 조선의 전직 고위 관료들에게 작위 또는 은사금을 주던 일제가 남작의 작위로써 김석진을 회유하려 하자, 이를 치욕으로 여겨 1910년 9월 8일 아편을 먹고 자결하였다.
1962년 건국훈장 독립장이 추서되었다.