Why are some molecules hydrophobic?
It mostly has to do with polarity.
Molecules which are hydrophilic, or water lovers, often tend to be polar. This is crucial since water itslef is polar- it has a net negative part (The oxygen atom, as it is highly Electronegative will attract the electrons more than the hydrogen atoms in water, giving it a net negative polarity while the hydrogens are net positive in polarity.)
This means that they can bond easily to other polar molecules- like the water-soluble Vitamin C
It has plenty of hydroxyl groups which results in lots of polarities and thus makes it easily soluble in water.
Vitamin D, on the other hand, is highly hydrophobic because of its lack of polar groups. (It does have one hydroxyl group, but this is not sufficient for it to be soluble in water.)
Instead, it has many non-polar methyl groups which make it hydrophobic, as the water has nothing to "grab on to" with its polar parts, so often it is the case that molecules that are non-polar are also therefore hydrophobic. This is also the case for fats and oils- you cannot dissolve them in water because they are not polar .