The average bus between Dalkeith and London takes 11h 47m and the fastest bus takes 11h 35m. The bus service runs several times per day from Dalkeith to London. 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 3 times a day between Dalkeith and London. The earliest departure is at 7:30 AM in the morning, and the last departure from Dalkeith is at 6:00 PM which arrives into London at 5:45 AM. All services require a transfer, and take on average 11h 47m. The schedules shown below are for the next available departures.

11h 50m • 1 change

11h 35m • 1 change
Arrives next day

11h 45m • 1 change

11h 50m • 1 change

11h 35m • 1 change
Arrives next day

11h 45m • 1 change

11h 50m • 1 change

11h 35m • 1 change
Arrives next day

11h 45m • 1 change

11h 50m • 1 change

11h 35m • 1 change
Arrives next day

11h 45m • 1 change
Want to know about travelling from Dalkeith to London? 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 Dalkeith to London. However, there are services departing from Dalkeith station and arriving at London station via London Victoria. The journey, including transfers, takes approximately 11h 47m.
Dalkeith to London bus services, operated by Borders Buses, depart from Edinburgh, Bus Station.
Dalkeith to London bus services, operated by Borders Buses, arrive at London Victoria station.
The distance between Dalkeith and London is 524.7 km. The road distance is 611 km.
FlixBus operates a bus from Edinburgh, Bus Station to London Victoria every 30 minutes. Tickets cost £35–65 and the journey takes 8h 5m.