The results of the COM component are passed back to the listener, which passes it back to the client. So the ASP page does nothing except act as a bridge, and one page can serve as a bridge for all SOAP calls in an application. The ASP page also serves as the point of security. Every middle-tier method call goes through the SOAP listener ASP, therefore securing that one page effectively secures the application. This is a good thing.
SOAP forces developers to think stateless at the middle tier.
Struggling with the details All isn't roses and sunshine in the SOAP world. The devil is in the details. Because SOAP is still so new, you have to build much of the SOAP infrastructure, such as the SOAP listener, yourself. You have to build lots of error handling and testing into your code. For example, if something goes seriously wrong at the IIS level, you aren't likely to get a SOAP envelope on the return side of the client.