常善,高阳人。

世代为大族。

父亲常安成,魏正光末年,蠕蠕侵犯边界,以统军身份跟随镇将慕容胜大败蠕蠕。

当时,破六汗拔陵作乱,打算威逼常安成。

常安成不从,率领部下讨伐破六汗拔陵。

以战功授伏波将军,赏给鼓乐。

后来与破六汗拔陵连续交战,死于战场。

魏孝昌年间,常善跟随尔朱荣入洛阳,授威烈将军、都督,加龙骧将军、中散大夫、直寝等衔,封房城县男,食邑三百户。

后来随从太祖平定侯莫陈悦,任天水郡守。

魏孝武帝西迁后,授武卫将军,晋封武始县伯,食邑增加二百户。

大统初年,加平东将军衔,晋封侯爵。

活捉窦泰,收复弘农,攻克沙苑,多次立功。

授使持节、卫将军,加假骠骑大将军、秦州刺史衔。

四年(538),参与河桥之战,加大都督衔,晋封公爵,授泾州刺史。

当时蠕蠕入侵,在北部边境抢掠,常善率军将其击败,夺回被掠走的全部财物。

授车骑大将军、仪同三司,又升任骠骑大将军、开府仪同三司、西安州刺史。

转任蔚州刺史。

连续治理三个蛮族聚居的州,很有政绩。

魏恭帝二年(555),晋封永阳郡公,食邑增加二千户。

孝闵帝登基,授大将军、宁州总管。

保定二年(562),入朝担任小司徒。

四年,突厥出兵,随公杨忠东征,命令常善接应。

五年夏天去世,当时六十四岁。

追赠使持节、柱国大将军、大都督、延夏盐恒燕五州诸军事、延州刺史。

儿子常升和承袭爵位。

在此之前,由于常善功勋,已授常升和为仪同三司。