본관은 해주(海州). 자는 사수(士受), 호는 체천(棣泉). 영의정 오윤겸(吳允謙)의 증손으로, 할아버지는 오달천(吳達天)이고, 아버지는 병조판서 오도일(吳道一)이다. 어머니는 정엄(鄭淹)의 딸이다. 윤증(尹拯)의 문인이다.
음보로 주부(主簿)가 되고, 1735년(영조 11) 증광문과에 병과로 급제하여, 부수찬(副修撰)·교리(校理)·이조좌랑·수찬·검토관(檢討官)·부응교를 거쳐 1741년 승지에 이르고, 이듬해 대사간이 되었다.
1748년 부제학, 1753년 대사성에 이어 예조참판에 승진하였다. 이어 동지의금부사, 이듬해 대사간·대사헌·부제학·동지경연사를 지냈으며, 이후 개성유수를 거쳐 1758년 대사헌에서 관직을 떠났다. 일찍이 이돈(李燉)·엄집(嚴緝)이 증수한 『송도지(松都誌)』를 1757년에 속지(續志) 1권을 증보하여 펴냈다.