农历,又称夏历、阴历、旧历、汉历、老历,是东亚传统历法之一。农历属于一种阴阳历,平均历月等于一个朔望月,但设置闰月以使平均历年为一个回归年,设置二十四节气以反映季节(太阳直射点的周年运动)的变化特征,所以又有阳历的成分。至今几乎全世界所有华人及朝鲜、韩国和越南及早期的日本等国家,仍使用农历来推算传统节日如春节、中秋节、端午节等节日。因为这种历法相传创始于夏代,完善于汉代,加之主要是汉族人使用,所以中国其他民族包括清朝刚建立时都把此历称为汉历。到辛亥义举后,因使用西历,此历称为旧历或夏历。
汉历有个辅助部分——节气。节气如果也算历法的话,就是完全的太阳历。节气和地球在绕太阳运动的轨道的位置有关,和月球无关。节气是从立春开始的,一个太阳年是两个立春之间的时间,约365.2422天。根据太阳的位置,把一个太阳年分成二十四个节气,以利于农业种植等活动。
汉历的纪年用天干地支搭配,六十年周而复始。年份分为平年和闰年。平年十二个月;闰年十二个月普通月份加一个闰月,总共十三个月。月份分为大月和小月,大月三十天,小月二十九天。一年中哪个月大,哪个月小,年年不同,由计算决定。平年全年354~355天,闰年全年383~384天。由于每平年的天数比太阳年约差十一天,所以采用设置闰年(即十二个普通月份加上一个闰月)的方法使这几年的平均日数尽量的接近365.2422日。由于1回归年为12.368个朔望月,0.368=368/1000=46/125,即125个回归年的话正好余出46个朔望月,所以在一百二十五年中应设置四十六个闰年。但因为这样设闰太过复杂,经推算,7/19最接近0.368。故一般的,在19年里中设置7个闰月,有闰月的年份全年383天或384天。
人们因为二十四节气对于农业生产有重要意义,因而常把汉历称为“农历”,但二十四节气应根据太阳在黄道上的位置而决定,应该属于太阳历部分。因此把汉历称为阴历是不恰当的。
汉历是世界上广泛使用的历法中,唯一既照顾到太阳历,又照顾到阴历的历法。因此,有人说西方的历法比中国科学,这显然是错误的。比如,公历中,一个“月”的概念首先就已经违背了“月”这个初始的概念。