Стокгольм лежит на 14 островах на берегах озера Меларен и пролива Норстрем. Старый город расположен на острове Стадсхольмен. Характер города во многом определился его местоположением и ни с чем несравнимой природой. Прибрежная полоса около Стокгольма изобилует фьордами.
Климат в Стокгольме морской умеренный: здесь редко бывает слишком жарко или слишком холодно. Средняя температура летом - около 20 градусов, максимальная же не превышает 30. Лето, помимо того что это самый теплый сезон, еще и самый дождливый: больше всего осадков приходится на июль и август. Стокгольму не свойствены сильные морозы, но с декабря по март температура опускается ниже нуля и выпадает снег.