It looks like sometimes the generated Http verb ("GET","POST","DELETE","PUT") is generated based on method name... So if my webservice method name is "DeleteMyStuff" the proxy generated on client will try to use verb "DELETE" although my webservice does not support "DELETE" verb. Same for method named like "GetMyStuff" having [HttpPost] attribute - on client it generates sometimes verb GET instead of verb POST which will result in an error because server does not support GET verb for that method.
It looks like sometimes the generated Http verb ("GET","POST","DELETE","PUT") is generated based on method name... So if my webservice method name is "DeleteMyStuff" the proxy generated on client will try to use verb "DELETE" although my webservice does not support "DELETE" verb. Same for method named like "GetMyStuff" having [HttpPost] attribute - on client it generates sometimes verb GET instead of verb POST which will result in an error because server does not support GET verb for that method.