Colorsets allow you to define very specific colours for some aspects of a window. They’re generic enough such that they’re also applied to menus as well. To take an example:
Colorset 3 fg tan, bg navy
This colorset is defined by the number “3” – that’s the first argument a colorset will expect. Any options after that are defining how the colorset will look when it is applied to windows.
In the above instance, the foreground colour is “tan”, and the background colour is navy – not that appealing. But what that means is that so that the two colours do not clash, the hilight colours are calculated for you. If you look at any window, around the edge, where a relief is drawn, you’ll see another colour complimenting it – that’s the hilight colour. You can also tell it explicitly what colour to use instead of the calculated one:
Colorset 3 fg tan, bg navy, sh blue, hi black
“sh” is shadow, and “hi” is hilight. It will look quite odd. But we haven’t stopped there. We have yet to tell FVWM which colorset is to be applied to which windows, i.e. whether it is to be used for focused, or non-focused windows:
Style * HiLightColorset 3
Applies the colorset “3” to focused windows. If you define another colorset, you can do so for unfocused windows:
Style * Colorset <n>
Colorsets are also powerful for other things – in the use of transparency, and for allowing pixmaps to be applied, too. You can also have gradients of colours applied in your colorset, to blend different colours together, and at different angles. If you look at “man FvwmTheme” – that has all the examples you could need. Play about with them, and experiment. 
– Thomas Adam