Best way ? Fly to London on an evening flight, tube to Euston and get the sleeper direct to Dundee. Arrive early (possibly too early at 0609) the next morning. If you get the right deal the train fare including bed & breakfast could be only £19. Afternoon flights to London tend to be cheaper than the peak morning & evening ones.
Did that (well, Aberdeen) recently. Grand fun, bit of an experience.
z