1390년( 공양왕 2) 생원시에 급제하고 부음(父蔭)으로 벼슬에 나갔다. 1400년( 정종 2) 2월 낭장 재직 시에 평소부터 성달생을 총애했던 왕세자(王世子) 정안군(靖安君)의 천거로 호군(護軍)에 초수(超授)되었다. 그리고 1402년( 태종 2) 조선시대 처음으로 실시된 무과에서 장원으로 급제, 대호군에 승진되었다.
1407년에는 흥덕진병마사(興德鎭兵馬使)로서 그 곳에 침입한 왜구를 격퇴하였다. 1410년 무과 중시에서 2등으로 급제, 다시 판예빈시사(判禮賓寺事)에 승진했으며, 그 뒤 웅무시위사첨절제사(雄武侍衛司僉節制使) · 판성주목사 등을 역임하였다. 1415년에는 경성절제사로 파견되어 뛰어난 무예로써 야인 위무에 공헌하고, 다음 해 중군동지총제(中軍同知摠制)가 되었다.
1417년 전라도도관찰사 겸 병마도절제사, 1418년( 세종 즉위년) 동지총제를 거쳐 내금위 삼번절제사(內禁衛三番節制使)가 되었다. 이해 9월에 상왕(上王)과 세종이 모화루(慕華樓)에서 명나라 사신을 전송할 때 성달생이 별운검총제(別雲劒摠制)가 되어 칼을 차고 시립(侍立)했다가 세종의 질책을 받고 파직되었다.
같은 해 함길도병마도절제사 겸 판길주목사로 파견되면서 복직되었으나, 곧 강상인(姜尙仁) 옥사에 연루되어 자원안치(自願安置)되었다. 그러나 곧 재능을 발휘할 수 있는 인물이라는 배려로 사면되었다.
1419년 중군총제에 서용되었고, 같은 해 대마도정벌과 관련되어 전라 · 경상 · 충청도 수군도처치사(水軍都處置使)에 제수되었다. 그러나 승선을 꺼려 무단 하륙한 일로 논죄된 뒤 연산(連山)에 유배되었다가, 곧 사면되고 다시 좌군동지총제에 서용되었다.
1420년 사은사가 되어 명나라를 다녀온 뒤, 경상우도수군도절제사 · 경상우도수군도안무처치사 · 좌군총제를 거쳤다. 1422년 여연(閭延)에 침입한 야인의 격퇴를 위해 특별히 평안도도관찰사로 파견되었으며, 다음 해 관내의 기민을 구휼하지 못했다는 이유로 파직되었다. 1424년에 다시 총제에 서용되었고, 다음 해에는 다시 평안도도절제사로 파견되었다.
1427년 공조판서로 입조했다가 진응사(進鷹使)가 되어 두 번째로 명나라를 다녀왔다. 그 뒤 도총제 · 함길도병마도절제사 · 함길도도절제사 · 지중추원사 등을 역임하였다. 1444년 안질을 치료하기 위해 충청도 초수리(椒水里)에 행행(行幸)한 세종을 수가(隨駕)했다가 갑자기 사망하였다. 능숙한 무예로 북변의 진수와 시위에 공헌함이 많았고, 필법에 뛰어났다. 시호는 양혜(襄惠)이다.