From personal experience of travelling to Dundee from London:
Air. London City Airport to Dundee is quick, hassle free, great view from the (fairly low flying) plane. Operated by Scotair, several flights a day, ridiculous pricing, cheapest was $220 return. Haggle with them on the phone if they try to charge more, or go for an off-peak time.
Better option is a cheap flight from Heathrow or Stansted to Edinburgh and get the train from there. Total cost: $100 (but most of that was airport tax!)
Train from London: Probably excellent if you make the connections. Stressful and a VERY long journey if you miss them! Cost $160 one way, first class (but there are cheaper options)
Car: Can take anything from 7 hours from London, much longer if you hit traffic. Boring, boring motorways until you cross the border, by which time, you've sat in the car for so long, who cares what the scenery is like?
I would suggest that you fly to Edinburgh Airport. Take a day or two to explore Edinburgh then pick up a hire car to drive further north.
A car will get you to the more remote locations where you can camp or picnic or stay in a lovely family run B&B where you can witness Scotish hospitality first hand.
We went with the ferry from The Netherlands to Newcastle and then drove up north.
We of course took our little smart car (he gets a discount on the ferry!!) which left us free to come and go as we wanted.