CO2 and SO2 both are triatomic molecules; but there is a big difference in their dipole moment. why?
S has d-orbitals while C does not have any and hence CO2 forms multiple bonds and has a linear structure. SO2 has a electronic tetrahedral geometry with two lone pair of electrons giving it a bent molecular geometry. Dipole moment is a vector quantity and in the linear CO2 molecule the bond moments are equal in magnitude and opposite in direction so they cancel out giving an overall dipole moment of zero. In SO2, the bond dipoles of each S-O bond do not cancel each other.