You may need a stamp at the police station in Kayes too, but this seems fairly arbitrary. There are also flights to Simenti in the Niokolo-Koba game park. On many routes, you also find more rustic minibuses - sometimes, rather misleadingly, called cars rapides . These are battered, slow, crowded and worth avoiding if possible. Fares are reasonable.
Buses are about a third the price of bush taxis, and minibuses are somewhere in between.
There's normally a small extra charge for luggage. For travel around Senegal, trains are slower than road transport, but 2nd-class is usually cheaper. There are trains every day between Dakar and both St-Louis and Kaolack and weekly between Dakar and Tambacounda. The ferry MV Joola sails between Dakar and Ziguinchor twice per week in each direction. The journey takes about 20 hours.