The reasoning is a matter of cultural norms, work, and sunlight.
In American, it is often considered normal to eat dinner at 5 or 6 p.m. Many Americans could not imagine eating dinner a 9:00 p.m. as they are already in bed for the night. However, in Italy, dinner is eaten somewhat late. In northern Italy, dinner time is between 7- 9 pm and Italians in the south typically eat dinner around 9 pm. The elderly and geriatric population tend to eat dinner earlier.
Several theories aim to explain why Italians eat dinner so late. For one, eating later allowed farmers in southern Italy to work longer hours while there was still daylight.
Further, Italian work schedules differ from other countries. In Italy, there is a 2-hour break in the middle of the day known as an afternoon riposo. Thus, the fact that individuals go back to work after riposo until 6/6:30 pm also influences why Italians eat later than others.