The well known (or moderately known fact): C# enums can contain any value supported by its base type and not just the ones specified in the enum. Lets consider the following enum.

enum WeekDay
    Monday = 1,
    Tuesday = 2,
    Wednesday = 3,
    Thursday = 4,
    Friday = 5,
    Saturday = 6,
    Sunday = 7

Even though the enum supports values from 1 to 7 you can do the following.

WeekDay day = (WeekDay)40;

This prints out 40 without any error.

Now comes the lesser known fact: C# 1.2 spec sez "An Implicit enumeration conversion permits the decimal-integer-literal 0 to be converted to enum-type". This means the following is valid code

WeekDay day = 0;

Note that even though 0 is not supported it is implicitely casted to the enum!!! No idea why this is supported.