I've used this format in the past with success:
myTask.Actions.Add("powershell.exe", $"-NoLogo -NonInteractive -WindowStyle Hidden -File \"{scriptFilePathWithNoQuotes}\" {MyStringArgs}", myWorkingDirectory);
Note that if MyStringArgs contains paths that need quotes, you should supply them in the MyStringArgs variable.var MyStringArgs = "arg1 \"arg2 has spaces\"";