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.
JSON is a common data format used in APIs, configuration files, and data exchange. Learn to handle JSON in C# using `System.Text.Json`. This article covers creating data models, writing to and reading from JSON files, with practical code examples for efficient JSON management.

Learn how to implement the IComparable interface in C# to customize sorting behavior for objects. Explore sorting techniques, comparisons, and examples to efficiently order data in collections like lists and arrays.

Learn how to test API endpoints effectively using C# and Swagger. This guide covers setting up Swagger for API documentation, configuring C# for testing endpoints, and automating tests to ensure reliable web services.

IEnumerable in C# is an interface that defines a standard way to iterate over a collection of objects. The IEnumerable interface in C# provides a standard, efficient way to iterate over collections using foreach, enabling cleaner, more readable code, and LINQ integration.

In this tutorial, learn how to convert HTML to PDF or image in C# using wkhtmltopdf. This part covers adding and customizing headers and footers in your generated PDFs, enhancing document structure and appearance.

This guide explains generating PDFs and images from HTML using wkhtmltopdf in C#. With wkhtmltopdf's Webkit-based engine, convert HTML content, including complex CSS and JavaScript, into high-quality PDFs or images.

In this article, we will learn how to manipulate and manage in-memory data effectively, allowing for quick access and modifications while maintaining a structured format for your applications.

This article provides a comprehensive overview of the ArrayIOExtensionsLib class, detailing its functionality for converting arrays to text files in C#. We explore its key features, methods, and practical applications, including data serialization and file management techniques.

With Ziggy Rafiq, learn how to leverage advanced pattern matching features in C# 12, including the new let pattern and enhanced recursive patterns.

To enhance application performance, reducing IO calls and utilizing stack allocation is crucial. Leveraging value types and the Span<T> structure in C# allows efficient memory management and improved speed.

Encapsulation and abstraction are fundamental concepts in C# and object-oriented programming. Encapsulation refers to the bundling of data and methods that operate on that data within a class, promoting data hiding and security.

Ziggy Rafiq demonstrates how to use attributes and metadata in C# 12 including improvements in parameter types, reflection capabilities, and best practices for maintaining self-documenting code.

This article explores the differences between implicit and explicit interface implementation in C#. It explains how to implement an interface in two ways using classes, highlighting the accessibility of methods.

C# 12 unveils a hidden gem - inline arrays. This article delves into these performance powerhouses, showcasing how they boost speed, simplify memory management, and enhance type safety. Discover their functionalities and practical applications in diverse scenarios like geometric operations.

Learn how to efficiently delete an element from a binary tree using C#. This guide covers the complete process of node deletion, including leaf nodes, nodes with one or two children, and root node removal.

The Fibonacci series is a mathematical sequence starting with 0 and 1, where each subsequent number is the sum of the previous two. This article explores three methods to compute Fibonacci numbers in C#: recursion, memoization, and an optimal iterative approach.

Learn how to efficiently find and replace text in a Word document using C#. This guide covers essential concepts such as Microsoft Word automation, leveraging the Word Interop library, and implementing simple code examples.

This article describes Collections in C#. A collection is a way to create and manage groups of related objects. The group of objects can grow and shrink dynamically depending on the requirements in the collection.

Learn essential string manipulation techniques, including whitespace removal, case insensitivity, and character comparison. We’ll provide clear code examples and algorithms to efficiently determine if a given string reads the same forwards and backwards, enhancing your C# programming skills.

Discover the REPR Pattern, a powerful design technique tailored for C# developers. Learn how this pattern can simplify code structure, improve maintainability, and optimize performance in C# applications.

In this article, we explore how Func delegates operate within LINQ (Language Integrated Query) in C#. Func delegates enable concise and powerful data manipulation by allowing developers to pass methods as parameters.

This article explains how to use Func and Action delegates in C# to implement callbacks, providing flexible and reusable code. It includes practical examples for both returning and non-returning methods.

In this article, we explore the distinctive features of C# generics and how they enhance programming efficiency. We compare generics with non-generic types, focusing on benefits like type safety, code reusability, and performance optimization.

C#.NET applications can access OAuth-protected REST APIs. You'll obtain an access token through OAuth flow (often via a separate request) and include it in the authorization header of your HttpClient calls.

Learn how to write cleaner, more maintainable code with C# 12 features such as primary constructors and improved pattern matching. This article explores practical examples and tips for applying clean code practices with C# 12.

This guide provides practical C# code solutions for handling file access issues, including techniques for managing file locks and ensuring smooth file operations without interruptions.

This blog explores the choice between programming languages like C#, C++, and Java, focusing on productivity, ease of use, and project requirements. It emphasizes the importance of selecting the right language for the task, the advantages of using frameworks like .NET, and considerations for team capabilities and project architecture.

This article explores the concepts of Destructor and Dispose in C#. It illustrates the object's lifecycle, highlighting how constructors allocate memory and destructors clean up. The role of the Garbage Collector is discussed, emphasizing the importance of implementing IDisposable for managing unmanaged resources efficiently.

This article explores the benefits of Dispose for efficient resource cleanup, improved performance, and reliable memory management in C#. Discover best practices for handling managed and unmanaged resources effectively.

The Task Parallel Library (TPL) is a collection of public types and APIs within the .NET framework that facilitates the integration of parallelism and concurrency into applications.
Everything on C#, not only its articles: the C# page →
DevSocialUpcoming · 3rd editionAI Agents ConferenceNov 23–27, 2026Live onlineMembers only16days leftRegisterMembers onlyWrite an article and earn +1,000 SHARP when it is approved.
Write an article