Castelldefels is een gemeente in de Spaanse regio Catalonië, in de provincie Barcelona met een oppervlakte van 13 km². Castelldefels telt 64.892 inwoners (1 januari 2016). Het stadje ligt aan de kust, en is een residentiële randgemeente van de stad Barcelona. Castelldefels is erg populair onder de inwoners van Barcelona voor het kopen van een tweede huis, samen met het nabijgelegen Sitges.
In de nacht van 23 op 24 juni 2010 kwamen minstens 13 mensen om het leven toen ze net van de trein waren gestapt in het station Platja de Castelldefels. In plaats van gebruik te maken van de ondergrondse voetgangerstunnel stak een grote groep jongeren de sporen over terwijl een trein, die niet stopte in Castelldefels, haar doortocht maakte.[1]
De gemeente wordt doorsneden door de snelwegenC-31 (Avinguda / Autovía de Castelldefels) en de C-32 (Autopista de Pau Casals) die hier, vanuit de richting van Barcelona gezien, bij elkaar komen.