汉代匡家世代务农,但匡衡却十分好学,勤奋努力,由于家境贫寒,他不得不靠替人帮工以获取读书资用。他曾拜当时的博士学习《诗经》。由于勤奋学习,他对《诗》的理解十分独特透彻,当时儒学之士曾传有“无说《诗》,匡鼎来。匡说《诗》,解人颐”之语,是说听匡衡解说《诗经》,能使人眉头舒展,心情舒畅,可见匡衡对《诗经》理解之深。但匡衡的仕途在一开始却并不平坦。根据汉朝规定,博士弟子掌握“六经”中的一经,即可通过考试获得官职,考试得甲科者,可为郎中,得乙科者为太子舍人,得丙科者只能补文学掌故。匡衡九次考试,才中了丙科,被补为太原郡的文学卒史。但匡衡对《诗经》理解之深,已为当时经学家们所推重,当时身为太子的元帝也对其深有好感。
元帝即位后,任用匡衡为郎中,迁为博士,给事中。这时,京城长安一带发生日蚀、地震等灾变,匡衡乘机上书,引用《诗经》表明上行而下效的道理,劝元帝“减宫室之度,省靡丽之饰,考制度,修内外,近忠正,远巧佞,”“任温良之人,退刻薄之吏,显洁白之士,昭无欲之路”(《汉书·匡衡传》,下引同),然后再在百姓中推广道德教化,弘扬礼让仁和之风。匡衡的奏书得到元帝的赞赏,匡衡因此迁为光禄大夫、太子少傅。今山东省临沂市苍山县新兴镇的“太子堂'村即“太子少傅”之意。
汉元帝分喜好儒术文辞,尤喜爱《诗经》,曾多次亲自听匡衡讲《诗经》,对匡衡的才学十分赞赏,因此任匡衡为御史大夫。建昭三年(公元前36年)丞相韦玄成病逝,匡衡又代为丞相,封乐安侯,辅佐皇帝,总理全国政务。匡衡可算是因明经而位极人臣的典型了。
匡衡任职期间,多次上疏陈述自己对朝廷政策的意见,陈述治国之道并经常参与研究讨论国家大事,按照经典予以答对,言合法义,博得元帝信任。每当朝廷大臣讨论政务时,匡衡总是引《诗经》为据,认为“六经者,圣人所以统天地之心,著善恶之归,明吉凶之分,通人道之意,使不悖于其本性者也。故审六经之指,则人天之望可得而和,草木昆虫可得而育,此永永不易之道也。”匡衡的主张得到元帝及成帝的支持,这与从汉朝中期就开始兴起的独尊儒术,推重经学,微言大义的社会风尚是分不开的,实际是汉朝统治者用以统治人民的一种手段。
元帝后期时,宦官石显为中书令,他结党营私,把持朝政,怂恿元帝加重赋役,剥削人民,但因有皇帝的宠幸,没人敢触犯他。成帝即位后,匡衡便上疏弹劾石显,列举其以前所犯罪恶,并纠举他的党羽,这是匡衡所做的最后一件铲除奸佞,为汉朝廷尽忠的事情。不久,匡衡与同僚间渐有离隙,被人弹劾,贬为庶民,返回故里,不几年,病死于家乡 元帝封其为安乐侯,其侯国食封土地本为三十一万亩,匡衡利用郡图之误,非法扩大食封土地四万多亩。成帝时,司隶校尉骏等告其“专地盗土”(指扩大国界),被免为庶人。