There are twelve different color pallets that are built into the GBC upon boot up, which you can determine manually by button combination at the GAMEBOY boot up screen. The GBC can also detect when certain games are inserted, and will boot to that color scheme automatically (you can also manually over-ride this at the boot up screen, if you wish)
Essentially, the hardware assigns one color scheme to the sprites, and a different one to the background, which helps make things easier to see.
I believe there are also several games that have their own unique color scheme, custom built into the GBC hardware, Metroid II being one of them. It looks VERY nice with GBC colors.