You only need to enclose paths between double quotes when there is a space somewhere in the path; which is not the case here. Moreover, if you want a double quote to appear in the string, you have to escape it with a backslash
\
. Conversely, if you want a backslash to appear in the string, you have to escape it also, which leads to a double backslash
\\
.
All of this put together:
ProcessStartInfo processStartInfo = new ProcessStartInfo
{
FileName = "cmd",
Arguments = "/k cmd /min /C \"set __COMPAT_LAYER=RUNASINVOKER && start C:\\Users\\admin\\Desktop\\Install.exe\"",
WindowStyle = ProcessWindowStyle.Hidden,
UseShellExecute = true,
ErrorDialog = false
};