1353년(공민왕 2) 5월 지공거(知貢擧) 이제현(李齊賢)과 동지공거(同知貢擧) 홍언박(洪彦博)이 주관한 과거 시험에서 이색(李穡)·정추(鄭樞) 등과 함께 급제하였다. 이후 벼슬이 예조정랑(禮曹正郎)에 이르렀다. 이때 국가의 제사에 대한 기록이 없어서 착오가 많았는데, 옛 의례(儀禮)를 참고하여 순서대로 조목을 지어 주2을 만들었다. 1364년(공민왕 14) 이색의 부탁으로 금주(錦州: 현, 충청남도 금산군)에서 이곡의 『가정집(稼亭集)』을 발간하였다.
1367년(공민왕 16) 성균관(成均館) 생원의 숫자를 100인으로 늘리고, 오경사서재(五經四書齋)를 마련하여 생원을 교수하게 하였다. 당시 김구용(金九容)· 정몽주(鄭夢周)· 박의중(朴宜中)· 이숭인(李崇仁) 등과 함께 경전과 문장 작성에 대한 교관을 겸하게 되었다. 뒤에 전교령(典校令)이 되었는데, 이때 어머니의 상(喪)을 당하여 3년복을 입으려 하였으나 당시 사대부(士大夫)들이 부모상에 100일만 복을 입으므로 관직에 취임하였고, 그 대신 3년간 고기를 먹지 않았다.
1375년(우왕 1) 김의(金義)가 명(明)나라 사신을 죽인 후 북원(北元)으로 갔고, 이인임(李仁任) 등은 그를 수행하였던 사람들이 귀환하자 잘 대우하였다. 박상충은 이를 탄핵하였으며, 이후 이인임 등이 북원과 국교를 맺으려 하자 임박(林樸)· 정도전(鄭道傳) 등과 함께 이를 반대하고 친명외교(親明外交)를 주장하였다. 뒤이어 판전교시사(判典校寺事)가 되어 정몽주 등과 함께 친명책(親明策)을 쓸 것과 북원의 사신과 그 수행원을 포박하여 명나라로 보낼 것을 상서(上書)하였다.
그 해 간관(諫官) 이첨(李詹)· 전백영(全伯英) 등이 상소하여 북원과 통하는 것을 반대하고 친원파(親元派) 이인임과 지윤(池奫)의 주살(誅殺)을 주장한 것에 연좌되어 친명파(親明派)인 전녹생(田祿生)·정몽주·김구용·이숭인· 염흥방(廉興邦) 등과 함께 귀양 가던 도중 별세하였다.
박상충은 성품이 말이 적고 주1 큰 뜻이 있었으며, 경전과 역사에 해박하고 글을 잘 지었으며 성명학(星命學)에도 통달하였다. 벼슬에 나아가서는 부지런하고 항상 삼갔으며 불의로 부귀한 것을 보면 멸시하였다.
시호는 문정(文正)이다. 조선왕조에서 박소(朴紹) 등과 함께 전라남도 나주시 반남면의 반계서원(潘溪書院), 전북특별자치도 완주군 봉동읍 구호서원(龜湖書院), 개성직할시 오관서원(五冠書院) 등에 각각 배향(配享)되었다.