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.
This guide provides a thorough exploration of the C# language, covering essential topics such as language fundamentals, object-oriented programming concepts, asynchronous programming, and Language Integrated Query (LINQ).

In C#, methods often take parameters that are passed in a specific order defined by their method signature. However, there are cases where you might want to reverse the order of parameters when calling a method. One approach to achieve this is by using named arguments.

This article delves into the selection of API protocols—GraphQL, gRPC, and REST—offering insights through real-world examples, guiding developers in making informed decisions for scalable applications.

A struct in C# is a value type that represents a lightweight data structure. It's defined using the "struct" keyword and contains fields, properties, and methods. Suitable for small data structures, they offer efficient memory management and are often used for performance-sensitive scenarios.

'Struct' keyword is used to create a structure. A structure can contain variables, methods, static constructor, parameterized constructor, operators, indexers, events, and property. A structure can not derive/inherit from any structure or class. A structure can implement any number of interfaces. Structures provide better performance.

Learn about extending class functionality in C# using extension methods without altering source code. Understand inheritance vs. extensions, handling sealed classes, method chaining, and key points like static method declaration and usage of "this" keyword. Explore benefits like dynamic upgrades and FAQs clarifying extension method usage.

Constants are essential elements in any programming language, providing a way to define values that remain unchanged throughout the execution of a program. This guide explores the concept of constants in C#, their usage, advantages, and best practices.

Learn to efficiently manage data with Entity Object Generator through inserting and selecting operations. Master CRUD tasks, harnessing Entity Framework's power for seamless database interaction, ensuring robust data handling in your applications.

Employ the Entity Data Model (EDM) framework's reverse engineering for seamless data selection and insertion. Generate code from an existing database schema, enabling efficient data access and manipulation in your application using Entity Framework's powerful ORM capabilities.

Utilize Entity Data Framework (EDF) to select and insert data with Entity State (Unchanged) for efficient data manipulation. Leverage EDF's change tracking mechanisms to maintain object state, ensuring accurate data retrieval and insertion while minimizing unnecessary database interactions.

Utilize Entity Framework 5.0 to select data with enums. Employ LINQ queries for efficient data retrieval, leveraging strong-typed enums for enhanced code readability and database querying.

Singleton and Static classes can only have one instance available in memory, and both classes can be used to maintain the global state of an application, however, there are many differences between them. In this article, I explain what their differences are.

A Comprehensive Guide to Secure Coding in C# by Ziggy Rafiq. Learn how to write robust and secure C# applications by implementing input validation, encryption, authentication, and error handling. This section provides examples and best practices for preventing SQL injection, XSS attacks, and securing user authentication.

Discover how C# 10's init-only properties empower developers to craft immutable objects with precision, enhancing code readability and maintainability. In this article, Ziggy Rafiq demonstrates how you can use this powerful feature to create robust and predictable software.

Learn effective exception handling techniques in C# with Ziggy Rafiq's comprehensive guide. Discover best practices for managing exceptions, including specifying exception types, logging errors, and employing cleanup strategies. Enhance your C# application's robustness and reliability while minimizing downtime.

This comprehensive guide teaches how to streamline data interchange processes efficiently using C# 10 Records. Authored by Ziggy Rafiq.

Ziggy Rafiq wrote this article on Learning and Improving Our Code Style with C# 10 to highlight the Basics, and latest features of C# 10, clean code, review code, problem-solving, reading high-quality code, attending workshops and conferences, feedback and mentoring.

Ziggy Rafiq discusses tackling challenges in software component specification standards through the implementation of solutions such as adapters and bridges for standard mediation, abstraction and encapsulation for complexity reduction, and version control and configuration management for change tracking. These strategies promote interoperability, simplify complexity, and uphold consistency and compatibility across components and systems.

Unlock the elegance of C# 9 with this article on Records and Pattern Matching. Learn how to craft concise and readable code using the simplicity of Records for immutable data structures and the enhanced control flow of Pattern Matching. Elevate your coding efficiency and clarity with these powerful features by Ziggy Rafiq.

Dependency Injection (DI) is a software development design pattern that aims to achieve loose coupling between components and enhance the maintainability, testability, and scalability of applications. In the context of C#, DI is commonly implemented using frameworks like .

This article explores the concept of static classes in C#, detailing their characteristics, usage, and limitations. It covers static class setup, static class features, static method usage, and dependency injection considerations.

Learn how to seamlessly integrate a console application with Entity Framework for efficient database operations. Explore how to perform CRUD (Create, Read, Update, Delete) operations within your .NET Core or C# project, enabling smooth data manipulation.

C# out parameters facilitate passing method arguments' references. Unlike ref, they need not be initialized. With C# 7.0, parameters can be directly defined in the method, streamlining code. A wildcard feature may be introduced to ignore out parameters.

Struct and Class in C# are integral components for creating and managing objects, but they differ in fundamental ways. Understanding the difference between struct and class in C# empowers developers to make informed decisions, optimizing their code for specific requirements and use cases.

Pattern matching in C# is a powerful feature allowing concise and expressive code for conditional statements and type checking. It enables matching based on various patterns like types, constants, properties, tuples, and more, enhancing readability and flexibility in code logic.

How to write your functional programming functions in C#? That is the main question we're going to answer in this article.

In C#, a struct (short for structure) is a value type that encapsulates data and behavior related to a single concept. Structs are used to represent lightweight objects that typically contain a small number of fields. In this article, we'll explore what structs are, how they differ from classes, and their advantages.

Learn how to encrypt and decrypt data in C# using simple AES keys. AES, a symmetric encryption algorithm, ensures secure communication by encoding and decoding messages.

SOLID principles are a set of design principles that help developers create maintainable, scalable, and flexible software. In this article, we'll explore each of the SOLID principles: Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, and Dependency Inversion.

Enable dynamic control movement on a WinForms application at runtime by incorporating mouse interaction. Empower users to drag and drop UI elements for personalized layouts, enhancing user experience and customization options within your application.
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