Is yield break equivalent to returning Enumerable<T>.Empty from a method returning IEnumerable<T>
<p>These two methods appear to behave the same to me</p>

<pre><code>public IEnumerable&lt;string&gt; GetNothing()
{
    return Enumerable.Empty&lt;string&gt;();
}

public IEnumerable&lt;string&gt; GetLessThanNothing()
{
    yield break;
}
</code></pre>

<p>I've profiled each in test scenarios and I don't see a meaningful difference in speed, but the <code>yield break</code> version is slightly faster.</p>

<p>Are there any reasons to use one over the other? Is one easier to read than the other? Is there a behavior difference that would matter to a caller?</p>
