Die Bedeutung ist gleich. Grammatische Unterschiede:
weil = Nebensatzkonjunktion (Verb ans Ende)
da (in dieser Funktion) = Nebensatzkonjunktion
denn = Hauptsatzkonjunktion (zählt bei der Wortstellung nicht mit)
Ich werde nass, weil ich keinen Regenschirm habe.
Ich werde nass, da ich keinen Regenschirm habe.
Ich werde nass, denn ich habe keinen Regenschirm.