This is a library I've been working on for a year – originally to help provide better automatic generation of colors for charts and reports. I found it was useful in several other projects so I've made it available as a NuGet package called Colorspace. It supports an number of conversions as shown below.

NuGet package: http://nuget.org/packages/Colorspace
Documentation: http://sdrv.ms/M7AE9g
var a = new ColorRGB32Bit(255,0,0); var b = new ColorRGB( a ); var c = new ColorHSL( b );
var workingspace = new Colorspace.RGBWorkingSpaces(); var a = new ColorRGB32Bit(255, 0, 0); var b = new ColorRGB( a ); var c = new ColorXYZ(b, workingspace.SRGB_D65_Degree2); var d = new ColorLAB(c, workingspace.SRGB_D65_Degree2); var e = new ColorXYZ(d, workingspace.SRGB_D65_Degree2); var f = new ColorRGB(e, workingspace.SRGB_D65_Degree2); var g = new ColorRGB32Bit(f);