I\'m looking for reasons beyond the usual \"out parameters are confusing and indicate the method is doing more than one thing\"-style arguments and more about what is specifical
One reason is the out
parameters are handled by the proxy class generated when you add the service reference - that's extra overhead.
Another reason: according to this post, even if the original out
parameter is last when you consume it, it becomes first - confusing and may lead to complication errors that might take time to solve until someone figures this out.
Personal opinion: WCF operation (method) should do something and return something. It might do lots of things, but return only one thing which is the result - if you need extra stuff just have it return complex type with everything you need as data fields of that type.