C# IEnumerable neededFiles <p>I have this code:</p> <pre><code>var neededFiles = new[]{ "file1.exe", "file2.exe", "file3.exe", "file4.exe" }; IEnumerable&lt;string&gt; notFound = neededFiles.Where(f =&gt; !File.Exists(f)); if (notFound.Any()) { MessageBox.Show(string.Format(notFound.Count() &gt; 1 ? "App cannot find these files - {0}" : "App cannot find this file - {0}", String.Join(", ", neededFiles)), "Test", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } </code></pre> <p>It work's OK, but If I have for example file1.exe, file2.exe, file3.exe files code anyway prints "App cannot find these files - file1.exe, file2.exe, file3.exe, file4.exe". <em>How to make it print only needed file which not exists</em>? Example: if exists <strong>file1.exe</strong>, <strong>file3.exe</strong>, it must print: App cannot find these files - <strong>file2.exe</strong>, <strong>file4.exe</strong> Thanks in advance</p> <p>FIXED: <a href="http://stackoverflow.com/questions/24379077/the-best-overloaded-method-match-for-string-joinstring-string-has-some-in">The best overloaded method match for &#39;string.Join(string, string[])&#39; has some invalid arguments</a> This helped me.</p>