Barnvik is een plaats in de gemeente Värmdö in het landschap Uppland en de provincie Stockholms län in Zweden. De plaats heeft 351 inwoners (2005) en een oppervlakte van 65 hectare. De plaats ligt op het eiland Djurö en grenst aan de Oostzee. De directe omgeving van de plaats bestaat voornamelijk uit landbouwgrond en rotsen. Hoewel Barnvik meer dan 200 inwoners heeft wordt het toch als småort gerekend en niet als tätort, dit waarschijnlijk omdat meer dan de helft van de huizen in de plaats als vakantiehuis in gebruik is.
to add Barnvik map to your website;