Marruecos se encuentra separado de Europa por el estrecho de Gibraltar. Sus países vecinos son: Argelia al este (la frontera con Argelia se encuentra cerrada desde 1994), por el sur Mauritania y por el norte España, con quien mantiene intensos lazos comerciales y comparte tanto fronteras marítimas como terrestres (ciudades autónomas españolas de Ceuta y Melilla y peñón de Vélez de la Gomera). Existen también otros enclaves españoles en la costa delMediterráneo (peñón de Alhucemas, y las islas Chafarinas).
Marruecos cuenta con cuatro cordilleras: el Rif, el Atlas Medio, el Gran Atlas y el Antiatlas. La montaña más alta es el Toubkal, que alcanza los 4.162 metros de altitud. Entre el Rif y el Atlas Medio está el valle del Sebú. Desde Larache hasta Agadir está la llanura atlántica y entre la anterior y el Atlas Medio hay una meseta situada por encima de los 500 metros de altitud. Al sur del Antiatlas ya comienza el desierto del Sahara.
El clima es mediterráneo en las costas y más continental en el interior, con una distribución claramente invernal de las precipitaciones (que oscilan entre 300 y 800 mm (y 1000 mm en la región de Tánger-Tetuán) y unas temperaturas de enero que rondan los 12–13 °C en la costa y los 10 °C en Fez, Mequinez, Uxda y Marrakech. Las temperaturas de julio rondan los 25 °C en la costa y lugares del interior. En las montañas las precipitaciones son más abundantes y las temperaturas más bajas. En el Sahara el clima ya es desértico y muy árido.