C# (pronounced "See Sharp") is a modern, object-oriented, and type-safe programming language. C# enables developers to build many types of secure and robust applications that run in .NET. C# has its roots in the C family of languages and will be immediately familiar to C, C++, Java, and JavaScript programmers.
C# is an object-oriented, component-oriented programming language. C# provides language constructs to directly support these concepts, making C# a natural language in which to create and use software components. Since its origin, C# has added features to support new workloads and emerging software design practices. At its core, C# is an object-oriented language. You define types and their behaviour.
C# programs run on .NET, a virtual execution system called the common language runtime (CLR) and a set of class libraries. The CLR is the implementation by Microsoft of the common language infrastructure (CLI), an international standard. The CLI is the basis for creating execution and development environments in which languages and libraries work together seamlessly.
ASP DOT NET is a popular web-development framework for building web apps on the .NET platform.
ASP DOT NET is the open-source version of ASP DOT NET , that runs on macOS, Linux, and Windows. ASP DOT NET Core was first released in 2016 and is a re-design of earlier Windows-only versions of ASP DOT NET .
DOT NET is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.
The base platform provides components that apply to all different types of apps. Additional frameworks, such as ASP DOT NET , extend DOT NET with components for building specific types of apps.
Here are some things included in the DOT NET platform:
The C#, F#, and Visual Basic programming languages
Base libraries for working with strings, dates, files/IO, and more
Editors and tools for Windows, Linux, macOS, and Docker
ASP DOT NET extends the DOT NET platform with tools and libraries specifically for building web apps.
These are some things that ASP DOT NET adds to the DOT NET platform:
Base framework for processing web requests in C# or F#
Web-page templating syntax, known as Razor, for building dynamic web pages using C#
Libraries for common web patterns, such as Model View Controller (MVC)
Authentication system that includes libraries, a database, and template pages for handling logins, including multi-factor authentication and external authentication with Google, Twitter, and more.
Editor extensions to provide syntax highlighting, code completion, and other functionality specifically for developing web pages
When using ASP DOT NET your back-end code, such as business logic and data access, is written using C#, F#, or Visual Basic.