We use:

  • at¬†for a PRECISE TIME
  • in¬†for MONTHS, YEARS, CENTURIES and LONG PERIODS
  • on¬†for DAYS and DATES
at
PRECISE TIME
in
MONTHS, YEARS, CENTURIES and LONG PERIODS
on
DAYS and DATES
at 3 o'clockin Mayon Sunday
at 10.30amin summeron Tuesdays
at noonin the summeron 6 March
at dinnertimein 1990on 25 Dec. 2010
at bedtimein the 1990son Christmas Day
at sunrisein the next centuryon Independence Day
at sunsetin the Ice Ageon my birthday
at the momentin the past/futureon New Year's Eve

Look at these examples:

  • I have a meeting¬†at¬†9am.
  • The shop closes¬†at¬†midnight.
  • Jane went home¬†at¬†lunchtime.
  • In England, it often snows¬†in¬†December.
  • Do you think we will go to Jupiter¬†in¬†the future?
  • There should be a lot of progress¬†in¬†the next century.
  • Do you work¬†on¬†Mondays?
  • Her birthday is¬†on¬†20 November.
  • Where will you be¬†on¬†New Year's Day?

Notice the use of the preposition of time at in the following standard expressions:

ExpressionExample
at nightThe stars shine at night.
at the weekend*I don't usually work at the weekend.
at Christmas*/EasterI stay with my family at Christmas.
at the same timeWe finished the test at the same time.
at presentHe's not home at present. Try later.

*Note that in some varieties of English people say "on the weekend" and "on Christmas".

Notice the use of the prepositions of time in and on in these common expressions:

inon
in the morningon Tuesday morning
in the morningson Saturday mornings
in the afternoon(s)on Sunday afternoon(s)
in the evening(s)on Monday evening(s)

When we say last, next, every, this we do not also use at, in, on.

  • I went to London¬†last¬†June. (not¬†in last¬†June)
  • He's coming back¬†next¬†Tuesday. (not¬†on next¬†Tuesday)
  • I go home¬†every¬†Easter. (not¬†at every¬†Easter)
  • We'll call you¬†this¬†evening. (not¬†in this¬†evening)

sources : Original Link