Why do nanoparticles have a different color than their macro counterparts?
There is a fairly simple explanation of why small-enough particles are different from bulk materials. Once the particle becomes similar in size to the wavelengths of light involved then quantum effects start to matter for how the particle behaves.

The actual mechanisms that give specific colour may vary, but the main point is that the size of the particle comes to dominate the bulk properties of the material. In a bulk semiconductor, for example, the electronic properties depend on the band gap between occupied electron levels and unoccupied electron levels. When the particle is small enough, however, the electrons are more constrained and become more like an electron confined to a small box. This can mean that the possible energy levels of the electrons are determined by the physical size of the box not the bulk properties of the material. Hence any emission or absorption of light will be different to the bulk material. The additional physical constraints impose a different set of energy levels on the electrons.

The actual details can be quite complicated but the basic idea is that when particles are small compared to the wavelengths of light, you have to take into account the extra constraints on the system when calculating possible energy levels involved in electron transitions which are what causes colour.