I've looked into optional parameters etc. before, and straight asmx web services don't support this (with default generated WSDLs). With WCF however, you can mark parameters in your datacontract as IsRequired=false - see Optional parameters in ASP.NET web service