Learn it from developers who built it.
Tutorials, how-tos and deep dives on AI, .NET, C#, cloud and developer tools, written by the community.

Learn how to format, compare, add to, and calculate differences between dates in C# using DateTime and TimeSpan.

In this article, we are going to cover all the necessary information you need to know about Immutable classes in C#.

In this article you will learn about Working With Async, Await, And Dispatcher In C#.

Queue and stack are two common implementations when creating linked lists. A queue uses first-in-first-out algorithm. The stack uses last-in-first-out algorithm. Both are generic collections in C# and .NET. In the code examples of this article, we will learn about and how to work with Queue and Stack collection classes of .NET in C#.

This article is for the beginners who have just begun programming in the C# language with solutions for all the basic problems of C# programming. This is Part 3.

This article is Part 2 of my article series Basic C# Programming Problems. It contains 15 problems.

This article is for the beginners who have just begun programming in the C# language with solutions for all the basic problems of the C# programming.

You can remove an item from an ObservableCollection or any collection if you correctly implement Equals() and GetHashCode().


This article talks about one of the most interesting and a little bit puzzling concept of C#.

C# Constructor. A C# class constructor is a class method with the same name as the class and is automatically invoked when an instance of the class is created.

The C# DateTime structure represents dates and time in C# and .NET. This tutorial explains C# DateTime class, its members, properties and how to use them to perform DateTime tasks such as format dates in C# and compare two dates in C#.

In this article, you will learn about Performance Comparison between Records and Struct Records.

Take, TakeWhile, Skip and SkipWhile are called Partitioning Operators and we’ll discuss and investigate them. Not only that we’ll also see an equivalent loop construct to appreciate where these operators derived.


Constraints are used in Generics to restrict the types that can be substituted for type parameters. Here we will see some of the commonly used types of constraints.

In this article I am going to explain three jump statements; they are goto, break and continue.

Today I encountered an exception while working on an application. The exception was “configuration system failed to initialize”.

Arrays can be declared in many ways. These examples demonstrate arrays that are created at “design time” (static) and at run time (dynamic)

This article explains the importance of Generics in C# and how to implement them.

Here you will learn about the Command Design Pattern in C#.

This article explains a topic that is very commonly asked in interviews, and quite confusing. Let’s try to clarify it.

In this article you will learn about Access Modifiers and Default Access Modifiers in C#.

Here you will see synchronization of threads in a multithreaded application in .Net.

In this article, I will give one way to create a resource format file used to stock data about our resources through code.

In this article, we will look at the common things that need to be done to declare and implement an interface.

In this article, I will explain how to use the exponential format specifier In C#.

In this article, we will see how to convert an array to a generic type.


Learn how C# fields and properties support encapsulation, validation through accessors, and deferred object initialization.
Everything on C#, not only its articles: the C# page →
Write an article and earn +1,000 SHARP when it is approved.
Write an article