Why does NH3 have a -33 C boiling point?
There is now way to say (yet?) why a certain substance has a certain boiling point or freezing point. However, we can compare ammonia with other molecules and explain why the boiling point is such relative to the boiling point of these substances.
We compare the boiling point of NH3 to N2 and H2O. We compare it to N2 because N2 is heavier and has nitrogen, while H2O has hydrogen bonding like NH3.
Factors that mainly affect the boiling point of substances are molecular weight and molecular forces of attraction present. Heavier compounds will have higher boiling points. Meanwhile, stronger intermolecular forces will allow for a higher boiling point too. Hydrogen bonds are the strongest IMF so the presence of H-bonds will influence the boiling point. The shape of the molecule also affect how molecules interact, and hence the distribution of IMF - and surface area, hence strength of interaction between molecules. Taking all these into consideration, we can explain why NH3, while lighter than N2, has a higher boiling point; and why NH3 has a lower boiling point than water.
N2 only has london dispersion forces - it is a non-polar molecule. The boiling point of N2 is -196C. Thus, while it is heavier than NH3, it has a (significantly) lower boiling point. NH3 is polar due to difference in electronegativity of N and H, and presence of a lone pair. Also, it has H-bonds between H and N. This alone explains why it has a significantly higher boiling point (-33C) than the heaver N2. Meanwhile, it has a lower boiling point than water (100C). Water is a special molecule. It's structure allows for multiple hydrogen bonding in it's liquid state. Moreover, water is bent, while NH3 is pyramidal. Hence, the partial charges are more spread for NH3, giving it less of a dipole than water (dipole moment of 1.4 versus 1.8). The lower dipole moment, less hydrogen bond, and less IMF surface area due to shape, gives NH3 a lower boiling point than water (even if they have almost the same weight).
Boiling point depends on molecular weight, shape of the molecule, and intermolecular forces of attraction present in a molecule. Using these, NH3 can be compared to related molecules and justify why it has a certain boiling point. Briefly, NH3 while it has a negative boiling point, actually has a higher boiling point than most gases it's size, due to hydrogen bonding. However, unlike water, which has more H-bond and a higher dipole moment, it's boiling point is lower.