Vitznau es una comuna suiza del cantón de Lucerna, situada en el distrito de Lucerna, en la ribera superior del lago de los Cuatro Cantones.
Limita al norte con la comuna de Arth (SZ), al este y al sur con Gersau (SZ), al sur con Ennetbürgen (NW), y al oeste con Weggis.