All topics
Backend · Learning hub

C# notes for developers

Master C# with a curated set of 7 developer notes — core concepts, patterns, and interview prep. Maintained by the DevRecall team.

Save this stack to your DevRecallTest yourself — C# quizMore Backend notes
01 · C#

Language Fundamentals

C#: Language Fundamentals C# is a strongly-typed, object-oriented language developed by Microsoft. It runs on the .NET CLR and is the primary language for ASP.NET Core, Unity, and Xamarin/MAUI. Modern C# (10–13) continue

Read
02 · C#

OOP & Type System

C#: OOP & Type System Classes & Inheritance // Class with properties and constructor public class Animal { public string Name { get; init; } // init-only — set only in constructor/initializer public int Age { get; privat

Read
03 · C#

LINQ & Collections

C#: LINQ & Collections LINQ (Language Integrated Query) provides a unified syntax for querying arrays, lists, XML, databases, and any IEnumerable<T> source. It uses deferred execution — queries run when iterated, not whe

Read
04 · C#

async/await & Tasks

C#: async/await & Tasks C# async/await is built on the Task Parallel Library (TPL). async/await transforms methods into state machines that resume on completion — no thread is blocked while awaiting. async/await Basics /

Read
05 · C#

Modern C# Features & Interview Questions

C#: Modern Features & Interview Questions Records (C# 9+) // Record — immutable reference type with value equality public record User(int Id, string Name, string Email); var alice = new User(1, "Alice", "alice@example.co

Read
06 · C#

Reflection, Attributes & Source Generators

C#: Reflection, Attributes & Source Generators Custom Attributes // Define a custom attribute [AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, AllowMultiple = false, Inherited = true)] public class Audit

Read
07 · C#

Testing & Benchmarking

C#: Testing & Benchmarking xUnit Patterns // Shared context — expensive setup once per class public class DatabaseFixture : IDisposable { public AppDbContext Db { get; } public DatabaseFixture() { var options = new DbCon

Read

Keep your C# knowledge sharp.

Save this stack to your personal DevRecall — add your own notes, track what you're learning, and share what you know with the community.

Get started — free forever