一般认为:清明节的来历是为了纪念晋国的大臣介子推。当年晋文公因晋国内乱流亡国外,途中他饥饿难耐,可是野菜难以下咽,介子推就割下自己的大腿肉做了肉羹,献给晋文公。待到晋文公归国登上王位,就大封功臣,当年追随晋文公流亡的人都得到了封赏。可是介子推性格耿直,认为这些大臣接受赏赐是贪天之功,当年他割肉给文公吃,并不是贪图将来的封官加爵,于是他背着老母亲到绵山隐居。
后来晋文公经人提醒,发现忘了封赏介子推,赶忙派人到绵山寻找,却久无踪迹。无奈,晋文公让人在绵山防火,想用此法逼介子推出来受赏。谁知介子推终不为所动,母子相抱,烧死在柳树之下。文公非常悲痛,为介子推立了祠堂祭祀,把绵山改为介山,周边的田地作为他的祀田。晋文公这样做的原因是让自己记住教训,表彰忠臣志士(“以志吾过,且旌善人”),他下令在介子推的忌日禁火三天,称之为寒食节。一般认为寒食节后一天即是清明节。
其实自割腿肉,被焚至死的情节正史是没有记载的,根据《左传》和《史记》推论,介子推是隐居而死。自割腿肉的情节来源于《庄子·盗跖》,而被焚至死的情节来源于刘向《新序》。清明节前一天禁火三天,吃冷食的寒食节来源古代春季禁火的规定。《周礼·秋官》记载有司烜氏的官职,职责就是“中春以木铎修火禁国中”,是说大火星上升,天气渐热,告诫人们春 季禁火,防止焚烧林木。不过有学者认为是熄灭旧火,点燃新火。由此形成了禁火,食冷食的风俗,即寒食节。由于寒食对健康不利,后来就被慢慢被取消了,清明节和寒食节逐渐合二为一了,统称清明节了。