早年屡试落第,困于场屋垂30年,客游所至,南极潇湘,北抵幽燕,西至沂陇,久滞长安及关中一带,并隐居于华山,遨游边关。直至武宗会昌四年(844年)与项斯、赵嘏同榜登第。宣宗大中元年(847年)为太原幕府掌书记,以直言获罪,贬为龙阳(今湖南省汉寿)尉,后得赦还京。懿宗咸通末,佐大同军幕。咸通七年(867年)擢国子太常博士。
工诗属文,其诗凝炼秀朗,含思蕴藉,饶有韵致,无晚唐纤靡僻涩之习。尤以五律见长,深得五言律之三昧。与薛能、顾非熊、殷尧藩等友善,均有诗篇往来;又与贾岛、姚合为诗友,唱酬尤多。善于抒写羁旅之思和失意之慨,蕴藉深婉,秀朗自然。
《落日怅望》、《楚江怀古》、《送人游蜀》、《灞上秋居》等,历来颇为传诵。《出塞词》、《关山曲》等,慷慨激壮,是晚唐较好的边塞诗。乐府诗《征妇叹》哀伤惨恻,最有讽谕。杨慎《升庵诗话》举其《楚江怀古》“猿啼洞庭树,人在木兰舟”一联,谓“虽柳吴兴(柳恽)无以过也”。部分边塞之作,如《陇上独望》、《边将》、《射雕骑》等,也较沉雄激壮。五古《征妇叹》颇能刻画征妇悲痛心情。七言绝句亦有佳作。宋严羽、明杨慎、清王士祯等,均推其成就在晚唐诸人之上。叶矫然则称:“晚唐之马戴,盛唐之摩诘也。”清·纪昀《瀛奎律髓刊误》认为“晚唐诗人,马戴骨格最高”。翁方纲《石洲诗话》更以其五律“直可与盛唐诸贤侪伍,不当以晚唐论矣”。
诗作多为投赠、应酬或写羁旅、山林之作,较少反映社会现实。在《全唐诗》录存其诗172首,编为2卷。生平事迹见《唐诗纪事》、《唐才子传》等有传。
唐咸通九年(869年)病卒于国子太常博士任上,终年约70岁。著有《会昌进士诗集》1卷,《补遗》1卷。
金甲耀兜鍪,黄金拂紫骝。叛羌旗下戮,陷壁夜中收。霜霰戎衣月,关河碛气秋。箭疮殊未合,更遣击兰州。火发龙山北,中宵易左贤。勒兵临汉水,惊雁散胡天。木落防河急,军孤受敌偏。犹闻汉皇怒,按剑待开边。
同人家鄠杜,相见罢官时。野坐苔生石,荒居菊入篱。听蝉临水久,送鹤背山迟。未拟还城阙,溪僧别有期。休官不到阙,求静匪营他。种药唯愁晚,看云肯厌多。渚边逢鹭下,林表伴僧过。闲检仙方试,松花酒自和。
老怀清净化,乞去守洵阳。废井人应满,空林虎自藏。迸泉疏石窦,残雨发椒香。山缺通巴峡,江流带楚樯。忧农生野思,祷庙结云装。覆局松移影,听琴月堕光。鸟鸣开郡印,僧去置禅床。罢贡金休凿,凌寒笋更长。退公披鹤氅,高步隔鹓行。相见朱门内,麾幢拂曙霜。