EF-s lenses are designed for the 'cropped' (well just th 1.6x sensors - so the xxxxD, xxxD and xxD series) only. They wont fit on the 1D, 5D or the 10D (not sure about 300D don't have one). Just as a rule for myself I won't buy an EF-s lens as I still own a 10D.
EF however, will fit any EOS body. And that's it really.
Benefit of the EF-s is that because it's designed for the cropped bodies it's typically lighter and smaller for a given focal range than the EF equivalent.