Are there any drawbacks to using light groups? For example, maybe they don't work for something like Global Illumination / Bounce Lighting, or caustics? I'm trying to wrap my head around how this is implemented at a low level. It feels like magic. :)
Not that I'm aware off, it helps you manage them at once and separate them as a group for easier compositing or make these lights exclusively affect one item if you set it up like that. Once you use these light groups, you do need to be aware that it will impact your scene the way you set up these groups. But that doesn't happen by just assigning the lights to a group. You have to tell Blender what to do with this group before it has impact.
As I understand it it's in essence a layering system. Meaning it's not dissimilar to Photoshop Layers. Every light gets it's own layer, or is grouped together with other lights on a layer. This in turn allows you to change individual design choices on a per layer basis. Show/hide layers. Have layers impact other layers, but not all layers. That kind of stuff.
In the end, after rendering, these 'lights' are no more than a 2D image of colored pixels, which you can now control through the light groups in compositing too.