Environment variables are just a piece of data that is passed to the Windows process when it starts. The run-time functions used (BCL for System.Environment and CRT for getenv) are likely to create copies of the environment at startup, which means that they do not work with the same environment variables.
, - .