ProcessStartInfo.EnvironmentVariables:
A string dictionary that provides environment variables that apply to this process and child processes.
A generic dictionary containing the environment variables that apply to this process and its child processes.
On .NET Framework applications, using the Environment property is the same as using the EnvironmentVariables property.
And on not .NET Framework applications, what is the difference between ProcessStartInfo.EnvironmentVariables and ProcessStartInfo.Environment?