본관은 반남(潘南). 자는 자목(子木), 호는 호곡(壺谷) 또는 호하(壺下). 할아버지는 박인원(朴麟源)이고, 아버지는 동지돈녕부사(同知敦寧府事) 박종우(朴宗羽)이다. 어머니는 통덕랑(通德郞) 신명성(辛命聖)의 딸이다.
1810년(순조 10)에 진사시에 합격해 의릉참봉(懿陵參奉)을 지내다가, 1816년 정시 문과에 병과로 급제하였다. 예조좌랑에 임명되었다가 이듬해 사간원정언(司諫院正言)이 되었다. 왕의 총애를 받아 이례적으로 시강원사서(侍講院司書)를 겸하기도 하였다.
1819년에는 병조정랑이 되고 이듬해 용강현령(龍岡縣令)으로 나갔다. 이 때 잇달아 부모상을 당하였다. 1823년에 세자시강원필선(世子侍講院弼善)·홍문관교리(弘文館校理)가 되었고, 세자 익종(翼宗)이 정사를 대리할 때 신임을 받아 승지로 임명, 국사를 자문하였다.
그 뒤 호조참판·병조참판 등을 역임하고 충청감사가 되었다. 감사로 재임할 때 흉년이 들자 창고를 열고 백성을 구휼, 어사가 포상을 상소하기도 하였다. 1833년에는 진위 겸 진향사(陳慰兼進香使)의 부사(副使)로 청나라에 다녀왔다. 이듬해에는 비변사당상(備邊司堂上)이 되어 순조가 세상을 떠나자 행장(行狀)·시장(諡狀)의 찬집을 맡았다.
1835년(헌종 1) 한성부판윤을 지내고 2년 뒤에는 평안감사가 되었다. 1840년 연공정사(年貢正使)로 다시 청나라에 다녀오고, 1845년에는 우의정이 되었다. 1849년 헌종이 세상을 떠나자 고부사(告訃使)로 청나라에 다녀왔으며 1851년(철종 2)에는 실록청총재관(實錄廳總裁官)을 맡았다.
1855년 임금이 파주에 갈 때 병을 핑계로 호종(扈從)하지 않아 삭직되기도 하였다. 그 후 다시 우의정을 거쳐 1859년 좌의정에 이르러 3년 여간 재직하다가 영중추부사(領中樞府事)로 죽었다. 마음이 정직하고 처사에 신중했으며 왕을 잘 보필하고 백성들을 돌보아 당대에 신망이 높았다. 기회 있을 때마다 무능한 관리를 제거하고 임금의 향락을 경계하였다. 글씨를 잘 썼다. 시호는 숙헌(肅獻)이다.