Geilo é uma vila norueguesa, situada na comuna de Hol, no município de Buskerud, com cerca de 2.300 habitantes.
Geilo é principalmente uma estância de esqui, mas também oferece actividades de verão. Situa-se num vale com montanhas de ambos os lados. A baixa da povoação localiza-se a 800 metros acima do nível médio das águas do mar, sendo o seu ponto mais alto a 1178 metros. Encontra-se a 250 km de Oslo e a 260 km de Bergen.
A estação de Geilo da linha ferroviária de Bergen, Bergensbanen, foi inaugurada em 1907.
É um local turístico, com diversos hotéis e infraestruturas para desportos de Inverno. Possui ainda alguma indústria.