Grad Barselona, bez periferije, prostire se na površini od 100,39 km˛ i broji 1.605.602 stanovnika (popis stanovništva iz 2006 godine). Nalazi se oko 160 km južno od planinskog pojasa Pirineja i granice sa Francuskom. Udaljenost od Madrida, glavnog grada Španije, je oko 500 km. Grad je omeđen dvema rekama koje se ulivaju u Mediteransko more. Na severu je to reka Besos (katal. Besňs), a na jugu Ljobregat (katal. LLobregat).
Klima je mediteranska sa dugim i žarkim, sunčanim i veoma vlažnim letima i blagim zimama. Bez snežnih padavina i ca temperaturom koja zimi skoro nikada ne pada ispod nule, a koja se leti, naročito krajem jula i avgusta, kreće između trideset i četrdeset stepeni Celzijusa. U centru grada se uticajem ljudskog faktora formirala mikroklima, tako da su centru grada leti velike vrućine, a zimi je toplije nego u ostalim delovima.