The most common way to get around in Estonia and beyond is to take the long haul bus. The Autobussijaam (main bus station) is located about 2km southeast of the Old Town. Trams 2 and 4 stop just outside the Old Town and will take you to within about 100 meters of the bus station (Fare EUR 1.60, buy tickets from the driver). Domestic routes are primarily covered by SEBE express buses, while long-haul buses to Riga and Vilnius are run by the combination of Lux Express and Simple Express. My bus to Tartu was quiet and comfortable, while I've heard the Lux Express buses especially have considerable amenities. Tickets can be purchased at the bus station, online, or at various travel agencies around Tallinn.
Tallinn's central bus station (Autobussijaam) is located at Lastekodu 46, which is about 2 km southeast of the Old Town. The main international bus companies which serve Tallinn are Eurolines and Nordeka.
I went from Tallinn to Riga by Eurolines bus. There are about 6 daily buses to Riga in Latvia (310 km, 6 hours). A single ticket Tallinn - Riga is about 200 EEK (12,50 Euro, 2002).
Tallinn's bus station is on Juhkentali, a good walk from the centre of town, two busses we used were 23A and 17A, I'm sure there are others.
This is the place to go for travel to other parts of Estonia. The bus will be modern, comfortable fairly quick and cheap. example to Parnu is 90 Krooni for an adult and takes 1 hour 50 min.
The website has good information and in many languages.
Buy tickets from the office of the driver - no problem either way.
This is the modern new bus station of Tallinn. Clean and shinny, electronic timetable board and underground, which is very useful during the cold winter days.