Stockholm has a very efficient public transportation system, and this extends to its airports as well. There are several different options for getting to and from Stockholm from the airports, but the cheapest way is by a bus called Flygbussarna.
You do not need to book tickets ahead of time, nor do you need to worry about timing getting from the airports to the city. There is always a bus scheduled to go to the city after flights arrive, no matter what time of day or night. Simply find the Flygbussarna kiosk or ticket counter to purchase your ticket.
Tickets from Stockholm Arlanda to Stockholm City cost 119 SEK, or about $14. Tickets from Stockholm Skavsta to Stockholm City cost 159 SEK, or about $19. You can save a bit of money if you purchase your tickets online ahead of time. You can also purchase tickets at the airport or bus station cafes, rather than solely at the ticket counters and kiosks. This came in handy when we arrived at Arlanda and the kiosk was not working. We purchased our tickets at a 7-11 inside the terminal.
The buses are comfortable and most have WiFi. It takes 45 minutes to get from Arlanda to the Central Station (online it’s called Cityterminalen) in the city center and 1 hour 20 minutes from Skavsta to the city center.
To get from Stockholm city to Arlanda or Skavsta, simply go to the Central Station and head to the bus terminal to get your tickets. The schedule heading to the airports from the city varies, so be sure to give yourself plenty of time or check the schedule ahead of time to be sure there will be a bus when you need it.