Let's say you have an ASMX webservice written in C# or VB.NET or some other .NET language, and you want to call it from an ASP page written in VBScript.

There are a couple of ways to do this.

  1. Use the MS Soap Toolkit.

    But as the download page states, this toolkit will be retired in April 2005. This means Microsoft will no longer support its use.  This would mean, for example, that if a security bug were found in the toolkit after April 2005, Microsoft would not be bound to correct it and issue a patch.  Because of this, most developers are not writing new code on the SOAP Toolkit.
  2. Write a client of the webservice in C# (or VB.NET) and have that *client* expose a COM interface.  You would do this with tlbexp.exe and follow along the guidelines for COM--to-.NET interop.   In this case the ASP page would call the COM component, which would then act as the client to the webservice.
  3. If the webservice is simple, then you may be able to use MSXML to make the call.  Here is an example.

    and here's an article covering that technique:
  4. Use an alternative SOAP toolkit for COM-based environments (like VBScript).  PocketSOAP is one.

Are there other ways to do this?