The Christmas Eve Supper consists of the punch ( a compote of guavas, a kind of crab apple called tejocote, dried prunes,possibly raisins, a kind of red hibiscus flower called flor de jamaica, sugar cane and often spiked with rum or brandy; a fruit salad or pineapple salad made with fresh cream; spaghetti and or rice; and the very traditional main course is something called "romeritos." This romero or romeritos is not to be confused with the herb rosemary which is also called romero in Spanish. The Mexican romerito is plant called Torrey's seepweed in English ((Saueda torreyana Wats) and is mixed with red mole (mole poblano) and dried shrimp and eaten with tortillas or the rolls called bolillo and telera. In the more middle and upper class families the main course can be chicken, turkey, or pork roast (leg or loin) or all of the above. There might be a cake or pie for dessert but there could be flan and arroz con leche which is rice cooked in sweetened milk with sticks of cinnamon.Someone mentioned tamales. There could be the sweet tamales called canarios or tamal de dulce, but these are more of an all year thing. This is your basic traditional Mexican Christmas Eve "supper." It is called a supper ("cena" in Spanish) because traditionally it is eaten around midnight. In recent years Mexicans have begun to have their Cena de Noche Buena ( Holy Night Supper) earlier. In Our Family it is around 10:00 P.M. Christmas Day is not traditionalluy a big celebration day. It is usually for sleeping late after being up eating and drinking all night. A new recent trend, an American influence, is to eat more lightly Christmas Eve and have the traditional big meal the afternoon of Christmas Day.
I live and eat in Mexico. My wife is Mexican and her family is Mexican and we usually spend Christmas with her family.