<p>Why are 'out' parameters in .NET a bad idea?</p>

<p>I was recently asked this, but I had no real answer besides it's simply unnecessarily complicating an application. What other reasons are there?</p>

I would say the answer you gave is about the best there is. You should always design away from
```
out
```
parameters if possible, because it usually makes the code needlessly complex.
But this is true of just about any pattern. If there is no need for it, don't use it.