C# and .NET

C# and .NET are Microsoft's pair for business software, where C# is the language you write in and .NET is the toolkit that runs it.

Also known as C sharp dotnet .NET Core

Definition

C#, which is said out loud as C sharp, is a programming language, and .NET is the set of ready-made parts that C# programs are built from. .NET also includes the piece that runs the finished program, so the two names travel together and you almost never use one without the other. Both come from Microsoft, and both are free to download.

Companies rarely choose them for the language itself, and they choose them because one platform covers the whole list at once. That list runs from the website customers see to the program the accounts team opens on a desktop. It also takes in the job that runs at two in the morning and the report the manager prints on a Sunday. All of it comes from one set of tools, so there is one team to build it and one number to call when something breaks.

That suits an office already living inside Microsoft products, with Windows on the desks, Outlook for the mail and Teams for meetings. Staff then sign in once with the login they already have, and the software knows who they are and what they are allowed to see. You can build the same thing on another platform, but you would be paying twice for something the company already owns.

Here is the part that people still get wrong, and getting it wrong costs real money. Older .NET ran on Windows servers only, and those servers have to be paid for. Microsoft opened the code up about ten years ago, so today .NET runs on Linux just as well, and Linux is usually cheaper. The trap is the naming, because .NET Framework means the old Windows-only one and stops at version 4.8. Plain .NET with a number after it is the modern one, so if a supplier quotes a .NET project, ask which of the two they mean before you buy a single server. That is the first question Linkysoft asks when a client brings us someone else's quote to review.

The work itself then looks like any other project. There is a web application for the people at a desk, a mobile app for the people who are not, and a security review before anyone signs in from home. Linkysoft builds in C# where a client's staff already live in Microsoft tools, and in something else where they do not. The honest answer depends on your office, not on our preference.

Questions about C# and .NET

Is C# the same as C or C++?
No. It only borrows part of the name. C# is a newer and easier language made by Microsoft, and it handles memory for you instead of leaving that to the programmer.
Do I need Windows servers to run a C# application?
Not any more. Modern .NET runs on Linux, which is usually cheaper to rent. Only the old .NET Framework still ties you to Windows.
What is the difference between .NET Framework and .NET?
.NET Framework is the old Windows-only version and stopped at 4.8. Plain .NET, with a number after it, is the current one and runs on Windows, Linux and Mac.
Is C# free to use for a business?
Yes. The language, the tools and the free edition of Visual Studio cost nothing. You may still pay for Windows servers or paid editions, so check what the quote includes.

Still not sure how this applies to your project?

Tell us what you are building and we will answer in plain language.