title: What is the difference between .NET Core and .NET Standard Class Library project types?
body: <p>In Visual Studio, there are at least three different types of class libraries you can create:</p>
  <ul>
  <li>Class Library (.NET Framework)</li>
  <li>Class Library (.NET Standard)</li>
  <li>Class Library (.NET Core)</li>
  </ul>
  <p>While the first is what we've been using for years, a major point of confusion I've been having is when to use the .NET Standard and .NET Core class library types. I've been bitten by this recently when attempting to <a href="https://stackoverflow.com/a/42748869/983064">multi-target different framework versions</a>, and <a href="https://stackoverflow.com/questions/42938879/cant-get-xunit-tests-to-run-with-net-core">creating a unit test project</a>.</p>
  <p>So, what is the difference between <em>Class Library (.NET Standard)</em> and <em>Class Library (.NET Core)</em>, why do both exist, and when should we use one over the other?</p>