For Mechelen, buses 284 or the much more direct 285 (€3) are significantly cheaper than the train, and helpfully pick up right in the city centre at a bus stop near St-Pieterskerk, plus at a stop on Dirk Boutslaan. The same stops are also for buses 317 to Tervuren and 351/358 to Brussels Nord.
From the bus station take Aarschot-bound bus 310 for Kasteel van Horst, and convoluted bus 6 (from platform 5) for Hoegaarden. Some 370 services run to Diest (€3, one hour).
For Antwerp (€7.70, fast/slow 46/65 minutes), dtrains go via either Lier (€7.20, 35 minutes) or Brussels Airport (€9.30, 15 minutes). Sometimes it's quicker to change at Mechelen (€4.70, fast/slow 26/33 minutes).
Other direct services include the following:
Brussels (€5.50, fast/slow 22/31 minutes, five times hourly)
Diest (€5.50, fast/slow 25/33 minutes)
Liège (€11.30, fast/slow 35/56 minutes). Slow trains go via Tienen (€3.70, 15 minutes).