First, the PowerShell cmdlets do support Windows authentication. You can use the "-Trusted" switch to the Connect-Swis cmdlet instead of providing credentials. This will cause it to connect using the current user's Windows token.
From C#, you can use the REST format for the API. Sample code: OrionSDK/Program.cs at master · solarwinds/OrionSDK · GitHub. That example shows using an Invoke call to acknowledge an alert, but by changing the verb and the parameters, you can use it to unmanage a node as well.
Thanks again tdanner,
The -trusted switch got my powershell tests working, but most of all thanks for the REST example that is really what I am looking for.