IIRC, you have to jump through some hoops to get a perl SOAP::Lite client to talk to a .NET service (I don't have any direct experience, just a vague recollection from reading). It was covered in O'Reilly's (Programming Web Services with) SOAP book. Oh look, I think it's in chapter 3 of the book (under "Interoperability Issues"). I have no idea how up to date this info is, so YMMV.