Переменные перечисления не всегда инициализируются первым значением перечисления.
Например, переменные типа instance / static, они инициализируются значением «0» перечисления, которое не может быть именованным значением, например,
enum Color
{
Red = 1,
Blue = 2,
Green = 3
}
Color c; // This will be 0
Локальные переменные не инициализируются автоматически - их необходимо обязательно назначить до первой точки, в которой они могут быть прочитаны, как и любую другую переменную.
Не совсем понятно, чего вы пытаетесь достичь - если бы вы могли дать более подробную информацию о контексте, это очень помогло бы. Использование значения типа Nullable может быть тем, что вы хотите, или вы можете просто захотеть принудительно инициализировать в конструкторе, например.