Several trains a day run on the scenic West Highland Railway from Glasgow Queen Street Station to Fort William. These trains usually split at Crianlarich, with one section going to Oban and one to Mallaig - thus they may be announced as destined for Oban, but part of the train will actually get you to Mallaig. Make sure you are sitting in the right section!
The route take you through spectacular mountainous scenery, offering some of the best views of Scotland that you can enjoy without actually having to do any hiking. Trains cross the remote Rannoch Moor, and north of Fort William, the line crosses the spectacular Glenfinnan Viaduct, a hundred-year-old stone arched rail bridge which was brought to fame in the Harry Potter movies (the bridge also features on the Bank of Scotland £10 note). Sit on the left of the train for the best views.
In summer, the West Coast Railway company runs a special steam train service along this line to Mallaig, which is popular with tourists and day-trippers, especially due to the associations with the Harry Potter franchise.
Shiel Buses  run from Fort William to Mallaig three times per day Monday-Friday and once on Saturday.
From Mallaig, the ferry MV Lochnevis runs to the Small Isles: Rum, Eigg, Muck and Canna most days. Although the ferry carries cars, vehicles are not allowed on board without a permit issued by the respective authority as shown in the timetable. These are usually only given to islanders, service vehicles and those with a genuine reason for needing a vehicle (such as film crews, musicians e.t.c).
In summer, the car ferry MV Coruisk runs several times a day to Armadale on Skye. In winter, the MV Lochnevis operates two sailings a day on this route from Monday to Saturday, with one sailing on Sunday.
Mallaig is a small village, everything is within walking distance.
Mallaig has a few souvenir shops, two pubs, a tourist information centre and Spar and Co-op supermarkets. There is also a post office, chemist shop and ships chandlers.
In the middle of the village is the Fishmarket Restaurant serving fresh fish and some non-fish dishes. Very nice food. Alternatively, the Chlachain Inn does very nice food at reasonable prices. Their chips are great! Also, there are many other fish restaurants and other places to eat in the village.
The Chlachain Inn (above) has an outstanding collection of single malt whiskys.
There are many places to stay in Mallaig, though some are only open in the peak summer months.
At the large end of the scale, there is the West Highland Hotel which is a descendant of the original Station Hotel that was built to coincide with the coming of the West Highland Railway in 1901.
There are many B&B's at the cheaper end of the scale. One example is the family-run Springbank Guest House - a cheap and cheerful place just around the bay from the train station & ferry port.