These following points are based on the majority of the population with an average circadian rhythm.
In the afternoon the body’s pain tolerance is at its highest; which allows you to hit more heavy-weighted reps without crying like toddler performing deadlifts.
In the evening, your stamina is at its daily peak, joined by your overall coordination. These are HUGE factors when it comes to pounding the iron slabs. As we all know, stamina goes a long way… the difference between lifting for 30 minutes & 45 minutes can be paramount.
Anytime after 9pm is not so good. Melatonin release is at a higher rate after this time, preparing your body for sleep. Still, training after 9pm is much better than not training at all.
Statistically, by training in the morning you’re less likely to skip a workout. By waking up and getting the training session done, the rest of the day can go however it may; nothing will affect the fact that you’ve already trained. Your boss may be a douche and tell you to work late, you kid may be a douche and ask you to help with homework, your dog may be a douche & relieve itself on your Persian rug; it doesn’t matter, your training was done in the morning! However, by telling yourself you’ll train in the evening leaves your lovely little workout session in the merciless hands of your boss, kid, dog, or universe to decide whether or not you’re working out that day. Yikes.
My advice? Get up early, make your bed, blend your breakfast, and get training. For the whole day you’ll feel better, you’ll eat healthier, and your dog can poop on your kid’s homework for all you care; you've already won the day.