As for last trains, whilst departure trains might seem early, if it is especially long-distance you need to think about the arrival time and possession requirements down the line. GWR are surprisingly good in this regard and have a
2248 to Swansea which gets in at a rather anti-social 0227 and a
2202 to Plymouth (via Bristol) at a lovely 0210. I'd say this is against the norm and from London long-distance it really should be around 2200xx for a 3+ hour journey, 2300xx for a 2 hour journey, and 0000-0100 for the locals. Journeys ending past 0200 can't be much fun!
Some places also have shuttles running a bit later after the direct journey finishes.