Compare two Color objects

Colour structs have more data contained in them, than just the actual colour information, such as

Color [Transparent] 
R: 255 
G: 255 
B: 255 
A: 0 
IsKnownColor: True 
IsEmpty: False 
IsNamedColor: True 
IsSystemColor: False 
Name: Transparent 

Color.FromArgb(16777215)

Color [A=0, R=255, G=255, B=255] 
R: 255 
G: 255 
B: 255 
A: 0 
IsKnownColor: False 
IsEmpty: False 
IsNamedColor: False 
IsSystemColor: False 
Name: ffffff 

Equals comparisons will use all of these to determine equality. you should be diong what you already suggested, and use:

Color.Transparent.ToArgb().Equals(mStartColor.ToArgb())

Always read the documentation first:

"To compare colors based solely on their ARGB values, you should use the ToArgb method. This is because the Equals and Equality members determine equivalency using more than just the ARGB value of the colors. For example, Black and FromArgb(0,0,0) are not considered equal, since Black is a named color and FromArgb(0,0,0) is not"