본관은 한양(漢陽). 쌍성총관 조휘(趙暉)의 증손이며, 판도판서(版圖判書) 조돈(趙暾)의 아들이다.
대대로 용진(龍津: 지금의 함경남도 문천군 덕원)에 살았다.
1356년(공민왕 5) 아버지와 함께 동북면병마사 유인우(柳仁雨)를 도와(護軍) 쌍성(雙城)을 수복한 공으로 호군(護軍)이 되었다. 1363년에는 김용(金鏞)의 토벌에 공을 세우고, 수복경성(收復京城) 2등공신으로 책봉되었다.
1372년에는 가주(家州)에서 난동자들이 지방 관리를 죽이는 일이 발생하자 판사(判事)로서 이들을 토벌하였다. 이후 왜구가 함주(咸州)와 북청주(北靑州)를 노략질하자 만호(萬戶)로서 군사를 매복시켰다가 갑자기 습격하여 왜구를 대파하고 봉익대부(奉翊大夫)에 올랐다. 1375년(우왕 1) 밀직부사로서 충혜왕의 아들을 자칭한 중 석기(釋器)를 잡는 데 공을 세우고, 다시 동북면원수로 출정해 왜구를 토벌하였다.
1377년에는 신주(信州)·옹진현(甕津縣)·문화현(文化縣) 등지를 침입한 왜구를 공격했으나 적세가 완강해 전과를 올리지 못하였다. 이듬해에 판밀직(判密直)으로서 화포를 사용해 수군을 훈련시켰으며, 1379년에는 강릉도원수(江陵道元帥), 이듬해에는 강릉도상원수(江陵道上元帥)가 되어 왜구를 격퇴하는 데 공훈을 세웠다.
1383년 문하찬성사(門下贊成事)로서 동북면도체찰사(東北面都體察使)가 되어 변방의 방비를 맡고, 1385년에는 사도도지휘사(四道都指揮使), 그리고 곧이어 교주도원수(交州道元帥)가 되었다. 1388년 위화도회군에 가담해 삼사좌사(三司左使)가 된 뒤 수차 유폐된 우왕을 찾아 의대(衣帶)와 향연을 베푸는 직임을 맡기도 하였다.
1389년(공양왕 1) 판의덕부사(判懿德府事)가 되었으며, 이듬해 회군의 공으로 2등공신에 책록되었다. 환조(桓祖)의 딸인 정화공주(貞和公主)와 혼인했던 까닭에 조선왕조 개국 후 용원부원군(龍源府院君)에 봉해졌다. 시호는 양렬(襄烈)이다.