Avatar ·

What is the difference between .NET Core and .NET Standard class library projects in Visual Studio?

Hi! I'm new to C# and .NET, and recently started learning about creating class libraries. In Visual Studio, when adding a new project, I see two similar templates: "Class Library (.NET Core)" and "Class Library (.NET Standard)". I'm confused — which one should I choose?\n\nFor example, I'm writing a small personal project on .NET Core 3.1, and I want to extract common utilities (email validation, date handling) into a separate library. If I create a library on .NET Standard, can I use it in my .NET Core project? Or conversely, if I make a library on .NET Core, will it only work with .NET Core?\n\nAlso, I've heard about .NET Framework — should my library support older projects on .NET Framework 4.6.1? Or is it better to migrate everything to .NET Core right away? I'd appreciate an explanation.