李勉是郑王李元懿的曾孙,父亲李择言历任四州刺史,封安德郡公,以严厉干练著称。李勉自幼勤读经史,成年后沉静文雅、清正严峻,崇尚道家思想,累升至开封县尉。当时,天下承平已久,汴州(今河南开封)又是水陆交通要路,民居庞杂,最难治理。李勉在任时,与县尉卢成轨等人都有擒拿奸邪、揭发恶事的名声。至德元年(756年),李勉随唐肃宗前往灵州(今宁夏灵武),被任命为监察御史。当时,朝廷崇尚武功,勋臣依仗恩宠,大多不知礼仪。大将管崇嗣在朝堂上背向而坐,谈笑自如,被李勉弹劾,遭到拘押。唐肃宗赦免管崇嗣,叹道:“我有李勉,才知道朝廷的尊贵啊。”于是提拔他为司膳员外郎。至德二年(757年),关东诸将送来战俘一百多人,肃宗命全部处死。李勉进谏道:“现在元凶还没有消灭,战乱波及了大半个国家,许多人都受到了牵连,他们得知陛下登基,都想着洗心革面,现在如果把这些被俘的人全部杀掉,是逼迫那些跟随反叛的人继续作乱。”肃宗立即命令赦免战俘。
郭子仪收复长安后,李勉历任清要官职,逐渐升为河南少尹,先后担任河东节度使王思礼、朔方河东都统李国贞的行军司马,不久又任梁州都督、山南西道观察使。 宝应元年(762年),羌族、奴剌等联军入侵梁州(今陕西汉中),李勉守不住城池,被召回朝廷,担任大理寺少卿。但是,肃宗一向看重他的正直不阿,提拔他为太常少卿。后来,肃宗准备对李勉加以重用,但是李勉却不肯阿附权宦李辅国,被贬出朝廷,历任汾州刺史、虢州刺史、京兆尹、检校右庶子、兼御史中丞、都畿观察使、河南尹、江南西道观察使。767年(大历二年),李勉入朝,拜京兆尹兼御史大夫。大历四年(769年),李勉被任命为广州刺史,兼岭南节度观察使。当时,番禺叛军首领冯崇道、桂州叛将朱济时等作乱数年,攻陷十余州。李勉到任后,派大将李观与容州刺史王翃合力征讨,将它们全部斩杀,最终平定五岭。
大历八年(773年),李勉担任工部尚书,封汧国公。不久,永平军节度使令狐彰病死,临终前上表举荐李勉接替自己,唐代宗遂任命李勉为节度使。李勉在永平军八年,以素有德望,不威而治,关东诸藩镇对他都很敬重。大历十一年(776年),汴宋留后田神玉去世,李勉又兼任汴州刺史、汴宋节度使。汴州大将李灵曜勾结魏博节度使田承嗣,起兵反叛,田承嗣派侄子田悦援助。李勉与淮西节度使李忠臣、河阳节度使马燧出兵征讨,大破田悦,部将杜如江生擒李灵曜。后来,李忠臣代李勉镇守汴州,李勉回镇。大历十四年(779年),李忠臣因贪婪残虐,被部下驱逐。李勉又加汴宋节度使,并将治所迁到汴州。不久,唐德宗继位,加李勉为检校吏部尚书、同中书门下平章事。建中元年(780年),李勉又加检校左仆射,充任河南汴宋滑亳河阳等道都统。
建中四年(783年),李希烈反叛,兵围襄城,朝廷派李勉与神策军将领刘德信出兵救援。李勉上表道:“贼军以精兵围攻襄城,许州(今河南许昌)必然空虚,不如直捣许州,襄州之围可解。”不等朝廷答复,便命部将唐汉臣与刘德信攻袭许州。二将离许州还有数十里时,接到朝廷诏令,责他们违诏出兵,只得返回,结果在扈涧遭到敌军袭击,辎重兵械全部丢失。唐汉臣逃到汴州,刘德信逃到汝州。李勉担心东都危急,又派四千兵马前去助守,被敌军截断后路,不得返回。同年十二月,李希烈亲自带兵围攻汴州。李勉闭城坚守,因数月援军未至,只得集中全部兵力突围而出,东奔宋州(今河南商丘)。不久,李希烈攻陷汴州。兴元元年(784年),李勉请求辞去都统之职,朝廷便赐以其检校司徒平章事的官位将他召回。李勉回朝后,身穿白衣,向朝廷请罪,得到德宗赦免。李勉自觉惭愧,此后只是在位充数,不敢再有所建议。
贞元元年(785年),唐德宗欲启用新州司马卢杞为澧州刺史。给事中袁高认为卢杞奸邪败政,贬官尚不足以抵塞罪责,不肯发布诏书。德宗又问宰相道:“让卢杞当一个小州刺史,可以吗?”李勉道:“陛下打算给他官作,即便让他当大州刺史也是可以的,只是会让天下百姓失望。”德宗遂任命卢杞为澧州别驾,后来,德宗问李勉道:“大家都说卢杞奸邪,朕怎么不知道!你知道他的罪状吗?”李勉答道:“天下都知道卢杞奸邪,唯独陛下不知道,这正是他的奸邪之处。”时人都称赞李勉正直,但德宗却逐渐疏远于他。贞元二年(786年),李勉罢相,加封为太子太师(一作太子太保)。788年(贞元四年),李勉病逝,终年七十二岁,册赠太傅,赐谥贞简。