The Framework Design Guidelines suggest that you should:
DO provide a value of zero on simple enums.
Consider calling the value something like "None". If such a value is not appropriate for this particular enum, the most common default value for the enum should be assigned the underlying value of zero.
Example:
public enum Compression {
None = 0,
GZip,
Deflate
}
They also advise against using sentinal values like First and Last, since they are confusing for users.
These are only guidelines and there may be competing concerns that override this advice, like compatibility with existing libraries or usage patterns.