I don't know why people have been mentioning the .NET port as using C# as if C# is the only thing you can use in .NET. I doubt that's what it would be written in. C# != .NET
All we need to make OpenACS/dotLRN services be available via ".NET" is to have XML (already have that one), SOAP (Tcl has that), WSDL and UDDI (I'd assume Tcl SOAP has those two as well).
I've been wanting to write a small proof-of-concept OpenACS package using tDOM that would make some OpenACS service available and also make use of the google SOAP API (http://www.google.com/apis/)