元善,河南洛陽人。
祖父元叉,是西魏侍中。
父親元羅,最初擔任梁州刺史,到元叉被殺時,逃到梁國,官至征北大將軍、青冀兩州的刺史。
元善年幼時跟著父親到江南,他天性好學,於是通讀了五經,尤其精通《左傳》。
侯景之亂時,元善到了周國。
周武帝十分敬重他,讓他做了太子宮尹,賜爵為江陽縣公。
他常常拿經書教授太子。
開皇初年,做內史侍郎。
高祖每當看見他就說:「一表人才啊!」凡是陳述事理的奏書,讀來抑揚頓挫,令人注目相看。
陳國派使臣袁雅來問候,皇上命元善到館舍中接受國書,袁雅出門時見元善卻不行禮。
元善說過去辦事有敬拜的禮節,袁雅無話可答,就向他下拜,行禮後就離去了。
後來又升為國子祭酒。
皇上曾經到學校行拜師之禮,命元善講《孝經》。
於是元善詳細陳說書中的內容與道理,同時又用含蓄的話來勸諫皇上。
皇上十分高興地說:「聽了江陽縣公的一番話,令人振奮。」皇上賞給了元善一百匹絹,一套衣服。
元善的精通廣博,次於何妥,但是他風流蘊藉,舉止瀟灑,話音清楚明朗,聽的人可以忘記疲倦,因此後輩們都紛紛來到他的門下。
何妥時常心中不服,想使元善折服。
因為元善講《春秋》,剛一開講,儒生們就全到齊了。
元善私下對何妥說:「人的名望已經決定,希望你不要使我為難。」何妥答應了。
到了講學的場所,何妥便援引古今的疑難來發難,元善大多不能回答。
元善心裡很忌恨,兩個人因此有隔閡。
元善認為高赹有做宰相的才能,曾經對皇上說:「楊素粗俗,蘇威怯懦,元胄、元..,是如同鴨子一樣的小人。
可以交給國家大事的人,只有高赹。」皇上當時認為是對的,到了高赹有了罪過,皇上因為元善曾經為高赹說過話,很是責怪抱怨他。
元善憂慮害怕,以前就患有消渴病,於是病重而死,死時六十歲。