宋天禧三(san)年(nian)(1019年(nian))中(zhong)進士,曾(ceng)(ceng)擔任(ren)宜州(zhou)(廣(guang)西)、夏州(zhou)(湖北(bei))、安州(zhou)(河北(bei))、無錫(江(jiang)蘇)縣(xian)宰、推官(guan),后(hou)改任(ren)大理寺丞。任(ren)期內,其(qi)母謝世(shi),為守孝而(er)寓居揚州(zhou)。景(jing)祐元年(nian)(1034年(nian))舉賢良方正,遷(qian)禮部員外(wai)郎,后(hou)出(chu)任(ren)洪州(zhou)(今(jin)江(jiang)西南昌)通判,不久又調往揚州(zhou)。因曾(ceng)(ceng)上疏皇帝諫議(yi)十條,由此被選入直史館,為開封(feng)府推官(guan)、三(san)司鹽鐵判官(guan)。
寶元元年(nian)(nian)(1038年(nian)(nian)),安(an)化(在今(jin)甘(gan)肅省安(an)化縣)一帶的(de)少數民(min)族首領(ling)蒙光(guang)月率領(ling)部(bu)眾攻打宜州(今(jin)廣西宜山縣一帶),他(ta)(ta)遂向(xiang)朝廷提(ti)出“制蠻”方(fang)案,朝廷采用其(qi)策略,平定(ding)了(le)蒙光(guang)月之亂。以后(hou)他(ta)(ta)繼續向(xiang)皇帝上言,陳述治(zhi)國主張,提(ti)出爵賞宜慎重(zhong),擇官(guan)須謹(jin)慎,明定(ding)薦(jian)舉原則(ze),規定(ding)各級(ji)人員(yuan)著裝服飾以端正(zheng)禮儀,用才須得當(dang),注重(zhong)將帥(shuai)的(de)選(xuan)拔,明辨(bian)忠良奸佞,整頓邊(bian)防,加(jia)強戰備等,宋仁宗(zong)贊同并采納其(qi)建議。不久(jiu)(jiu)被任命為史(shi)館修撰(zhuan),后(hou)又被提(ti)拔為知制誥、翰林學士,不久(jiu)(jiu)再遷為尚書省禮部(bu)郎中。
由于他(ta)博學多智,能言善辯,尤其喜論國家(jia)大事,言辯頗為(wei)犀利,也常不經意地傷了他(ta)人。宋仁宗(zong)對(dui)此頗為(wei)不悅,將其調(diao)出尚(shang)書省,改派(pai)為(wei)侍讀學士、集賢殿(dian)修撰、河陽(今河南(nan)孟縣)知(zhi)府,不久又調(diao)為(wei)河中(今山西永濟)知(zhi)府。尚(shang)未到任,便因病離開人世,卒(zu)葬于江蘇省丹(dan)陽市城(cheng)東硯山西北區。