There are quite a few different DAC topologies with different properties. The typical tradeoff is between resolution and speed and power usage -- higher speed means lower resolution, and higher resolution means higher power usage.
The simplest DAC is arguably the string DAC or Kelvin divider. If you consider the 3-bit DAC above, you can see that every possible value representable by 3 bits has a corresponding voltage level in the string. As indicated, you decode the 3-bit word to a switch a voltage level to the output, turning off all the others. For example, if you have the word 010, you turn on the 3rd switch, and if you have 101, you turn on the 6th.
You can extend this string to have $2^{16} = 65 536$ levels, but this make a very large circuit, and is not feasible in practice. The more compact R-2R ladder is then a better option, although a pure 16-bit R-2R ladders will have very high requirements for component tolerances. A combined string and R-2R topology is quite common for 16-bit.
For audio, the so-called $\Delta-\Sigma$ modulator is quite popular. In this case the output is switched, and averaging in the form of a low-pass filter is used to generate the desired levels.