Environment.GetEnvironmentVariable() zwraca null w kodzie .NET wskazuje na próbę odczytu zmiennej w niewłaściwym zakresie (User/Machine/Process) — trzeba jawnie wskazać poprawny EnvironmentVariableTarget.
Environment.GetEnvironmentVariable()
EnvironmentVariableTarget