The average bus between Dundee and Dalkeith takes 2h 26m and the fastest bus takes 2h 7m. There is a bus service every few hours from Dundee to Dalkeith. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Buses run hourly between Dundee and Dalkeith. The earliest departure is at 6:39 AM in the morning, and the last departure from Dundee is at 11:18 PM which arrives into Dalkeith at 1:43 AM. All services require a transfer at Queensferry Street and take an average of 2h 26m. The schedules shown below are for the next available departures.

2h 33m • 1 change

2h 25m • 1 change

2h 21m • 1 change

2h 14m • 1 change

2h 41m • 1 change

2h 41m • 1 change

2h 17m • 1 change

2h 17m • 1 change

2h 31m • 1 change

2h 25m • 1 change

2h 26m • 1 change

2h 26m • 1 change
Want to know about travelling from Dundee to Dalkeith? We have put together a list of the most frequently asked questions from our users such as: What is the cheapest mode of transport? What is the quickest option? How much do tickets usually cost? and many more.
No, there is no direct bus from Dundee to Dalkeith. However, there are services departing from Dundee station and arriving at Dalkeith station via Queensferry Street. The journey, including transfers, takes approximately 2h 26m.
Dundee to Dalkeith bus services, operated by Scottish Citylink Coaches Ltd, depart from Nethergate station.
Dundee to Dalkeith bus services, operated by Scottish Citylink Coaches Ltd, arrive at Buccleuch Street station.
The distance between Dundee and Dalkeith is 64.2 km. The road distance is 106 km.
You can take a bus from Nethergate to Buccleuch Street via Queensferry Street and Shandwick Place in around 2h 19m.