1582년(선조 15) 진사가 되고 1590년 증광 문과에 병과로 급제, 승문원부정자(承文院副正字) · 예문관검열(藝文館檢閱)이 되었다. 임진왜란이 일어나자 강화 선원촌(江華仙源村)으로 피난했다가 양호체찰사(兩湖體察使) 정철(鄭澈)의 종사관이 되어 왜군 토벌과 명나라 군사 접대로 공을 세워 1598년 승지에 발탁되었다. 그 뒤 왕의 측근에서 전란 중의 여러 사무를 보필했으며, 성절사(聖節使)로서 명나라에 다녀오기도 하였다. 1601년 대사간이 되었으나 북인의 배척을 받아 정주목사로 좌천, 이후 지방관을 전전하다가 1608년(광해군 즉위년) 잠시 한성우윤 · 도승지를 지낸 뒤 계속 한직에 머물렀다.
1617년 폐모론(廢母論)이 일어나자 이에 반대해 벼슬을 버리고 원주로 거처를 옮겨 화를 피하였다. 인조반정 후 판돈녕부사(判敦寧府事)에 기용되었고, 이어 병조 · 예조 · 이조의 판서를 역임했으며, 정묘호란 때는 유도대장(留都大將)으로서 서울을 지켰다. 1630년(인조 8) 기로사(耆老社)에 들어가고 1632년 우의정에 발탁되었으나 늙었다는 이유를 들어 바로 사퇴하였다. 1636년 병자호란 때 묘사(廟社)의 신주를 받들고 빈궁 · 원손을 수행해 강화도에 피난했다가 이듬해 성이 함락되자 성의 남문루(南門樓)에 있던 화약에 불을 지르고 순절하였다.
일찍이 외할아버지인 정유길에게서 고문(古文)과 시를 배웠다. 그리고 성혼(成渾)과 이이(李珥)의 문인으로서 황신(黃愼) · 이춘영(李春英) · 이정구(李廷龜) · 오윤겸(吳允謙) · 신흠(申欽) 등과 친밀했으며, 당색이 다른 정경세(鄭經世)와도 도학으로써 사귀었다. 정치적으로 서인에 속하면서 인조 초에 서인이 노서(老西) · 소서(少西)로 갈리자 노서의 영수가 되었다.
시와 글씨에 뛰어났는데, 특히 서체는 2왕(二王)의 필법을 본뜨고, 전(篆)은 중체(衆體)를 겸하였다. 작품으로는 평양의 숭인전비(崇仁殿碑) 및 풍덕군(豊德郡) 군수 장인정(張麟禎)의 비에 남긴 전액(篆額)이 있다. 시조로는 「오륜가(五倫歌)」 5장, 「훈계자손가(訓戒子孫歌)」 9편이 전한다.
한 때 김상용의 죽음을 놓고 스스로 분신한 것이 아니라 실화(失火) 때문이라는 이설도 있었다. 그러나 박동선(朴東善) · 강석기(姜碩期) · 신익성(申翊聖) 등의 변호로 정려문(旌閭門)이 세워지고, 1758년(영조 34) 영의정에 추증되었다.
강화 충렬사(忠烈祠), 양주 석실서원(石室書院), 정주 봉명서원(鳳鳴書院), 안변 옥동서원(玉洞書院), 상주 서산서원(西山書院), 정평 모현사(慕賢祠)에 제향되었다. 문집으로 『선원유고(仙源遺稿)』 7권이 전하고, 판본은 안동 봉정사(鳳停寺)에 보관되어 있다. 시호는 문충(文忠)이다.