양주 회계군 오상현 사람으로 처음에는 효렴으로 천거되었다가 여러 차례 옮겨
영제 때 영릉태수가 되었으며, 181년에 창오와 계양의 도적들이 군과 현을 공격했다.
양선은 마차 수십 승을 만들어 석회를 담은 포대를 수레 위에 싣고, 포대를 꼬아 말꼬리에 연결했으며, 또 병거를 만들어 궁노만 쏘게 하고 싸우면서 마차를 앞에 놓고 바람을 따라 석회를 두드려 적을 보지 못하게 했다. 이 틈을 타서 불로 포대를 태우자 말이 놀라서 도적들의 진에 돌진했으며, 이어서 뒤에 있는 수레에서 궁노를 쏘고 징과 북을 울리자 도적들이 놀라 흩어지자 추격해 도적들을 많이 죽였다. 우두머리의 목을 베어 매달라 군을 평정했으며, 형주자사 조개가 양선이 적을 격파한 것이 아니라 공을 가로챘다고 하자 양선은 이에 대한 상주문을 올렸다.
조개가 붕당의 도움을 받자 양선은 함거에 갇혀 소환되도록 해서 스스로 호소하지 못하게 했는데, 양선은 팔을 물어 피를 내서 옷에 글을 써서 글을 만들었다. 적을 격파한 상황을 모두 진술하고 조개가 무고한 상황을 언급해 은밀히 친족에게 궁궐에 가서 연락하게 했으며, 조서를 내려 양선은 용서받고 의랑에 제수되었고 조개는 사람을 무고했다는 죄를 받았다.
양선은 3차례 옮겼다가 발해태수가 되었다가 사건에 연루되어 면직되었으며, 후에 상서령
장온이 특별히 표를 올려 천거하자 상서복야에 임명되었다가 병을 이유로 물러나 집에서 사망했다.