본관은 밀양(密陽). 자는 자계(子啓). 박강생(朴剛生)의 증손으로, 할아버지는 교서관정자 박절문(朴切問)이고, 아버지는 정난공신(靖難功臣) 박중손(朴仲孫)이며, 어머니는 공조정랑 문성조(文承祚)의 딸이다.
1453년(단종 1) 사마시에 합격한 뒤, 식년 문과에 을과로 급제해 집현전수찬(集賢殿修撰)·부교리를 비롯한 삼사의 요직을 거쳤다. 예종이 즉위하자 전라도관찰사가 되었고, 이어 한성부우윤, 호조참판을 거쳐, 1472년(성종 3) 진하사부사(進賀使副使)로 명나라에 가서 황태자의 책봉을 축하하고 돌아왔다.
1473년 강원도관찰사로 나갔다가 다시 내직으로 옮겨 공조참판·첨지중추부사·동지중추부사를 역임하였다. 1478년 경상도관찰사가 되어 해인사 소장의 대장경 판목을 봉심했고, 다시 동지중추부사가 되었다.
1483년 천추사(千秋使)로 명나라에 다녀와서 이듬해 평안도관찰사가 되어 변방의 관방 시설과 군자 확보에 힘썼다. 그 뒤 한성부우윤을 거쳐 사헌부대사헌에 부임하자 임금에게 시폐(時弊)에 관한 시무책(時務策)을 올려 받아들여졌다. 이어 동지중추부사·첨지중추부사를 역임하고, 예조참판을 거쳐 1489년 사헌부대사헌에 재임되었다. 이 때 재이(災異) 방지책 등 시무책을 제시하였다.
1492년 한성부판윤을 거쳐 지중추부사에 임명되었다. 이듬해 정조사(正朝使)에 지명되었으나 병을 핑계로 회피해 사헌부의 탄핵을 받고 동지중추부사로 강등되었다. 연산군 즉위 후 형조판서에 올랐으며, 『성종실록』 편찬에 참여하였다. 무오사화가 일어나자 추관(推官)이 되어 일처리에 앞장섰으며, 그 공로로 숭정대부에 승진하고 의정부좌참찬에 이어서 우찬성에 올랐다.
그 뒤 좌찬성으로서 지경연사(知經筵事)·세자이사(世子貳師)를 겸했고, 군기시제조(軍器寺提調)가 되어 군기 개선에 노력하였다. 1504년(연산군 10) 함경도관찰사로 나갔다가 돌아와 판중추부사가 되었다.
중종반정에 동조해 정국공신(靖國功臣) 3등에 책록, 의정부좌찬성에 임명되었으며, 밀산부원군(密山府院君)에 봉해졌다. 시호는 공간(恭簡)이다.