There always are four factors that need to be considered when thinking about solubility: the change in the bonds between the undissolved and solid states, and the change in randomness between them. In other words, we revisit ΔH and ΔS.
Consider some process such as the dissolving of NaCl.
In terms of bonds, we trade the relatively strong ionic bonds that hold the sodium cations and chloride anions shoulder to shoulder in the solid, against the solvent separated ions where each ion binds solvent molecules.
In terms of randomness, we trade a lattice for each ion against a system in which the ions can move much more freely. Coupled to that, however, is the decreased freedom associated with those solvent molecules that end up tightly bound to an ion.
Solubility always comes down to four connected issues, two pairs of issues, such as these. When NaCl dissolves in water, the resulting solution is cooler than the starting solvent. Heat is taken in, so the bonds between solvent and ions must not be as strong as those in the lattice. (When LiCl dissolves in water, the resulting solution is warmer than the water solvent.) Because NaCl does dissolve, it means that the unfavorable energy change must be overpowered by a favorable entropy change, so that the freedom from the lattice is a bigger factor than the restriction of the molecules of solvation.