For months, years and long periods like centuries, use in.
For days and dates, use on.
For precise times use at.
Meet me at 8 p.m.
The children played at recess.
Some common expressions vary the pattern:
in the morning, but on Monday morning
in the mornings, but on Wednesday mornings
in the afternoon but on Sunday afternoon
NOTE: Although we say in the morning, in the afternoon and in the evening, we say at night. Ex. Milk is delivered in the morning. The stars come out at night. BUT We heard a noise in the night.
Some time expressions do not require a preposition:
I went to Sicily last May.
He’s giving a speech next Friday.
My children visit every Thanksgiving.
What are you doing this afternoon?
Talking about the weekend admits of variation:
Do you work weekends?
Do you work on the weekend? (American usage)
Do you work at the weekend? (British usage)
BBC Learning English on, in and at with time expressions.
From: Daily Writing Tips