Milford is well served by public transport. There is an excellent bus service run by Trent Barton, The Sixes (see link for timetable details) which runs services every 10 minutes during the day and every half an hour in the evenings and Sundays south to Derby (takes 25 minutes) and north to Belper (takes 5 minutes) along the A6.
There are stops at Derwent Avenue, The New Inn, Hopping Hill, The William and The Strutt Arms, with shelters at The Strutt Arms (both ways) and The New Inn (Belper bound). The Strutt Arms bus stops additionally have electronic screens showing real time arrival times and service numbers of the next three buses.
Beyond Belper The Sixes continue mainly on to Ripley and/or the new Belper estates (Whitemoor, Far Laund etc.), but the 6.1 service goes hourly on to Wirksworth, Matlock and Bakewell, every day including Sundays.
There is second bus service, the TransPeak, run by High Peak (timetable in this link). Currently a 2 hourly service due to coronavirus, but normally hourly, every day including Sundays, this is a limited stop service from Derby to Buxton via the A6, stopping at The Strutt Arms only in Milford.
This service, along with the 6.1 described above, are excellent for exploring the Peak District. Additionally, both go to Bakewell, from which many other bus services fan out over the Peak District, including a regular service to Chatsworth House.
Milford is on the main Sheffield to London train line though there is not a station in the village. The nearest stations are Duffield (5 mins drive/bus, 25 mins walk) or Belper (10 min drive/bus). Services are currently run by East Midlands Railway (website here) and are approximately hourly south to Derby or north to Matlock and are very quick (15 mins from Belper to Derby for example). There is just one train a day from Belper to Sheffield and from Belper to London. Derby is an excellent rail hub, with services from there all over the country, including express trains to London in just 1hr 30 mins.