LATEST 🚀 Welcome to Upgradix by Shrash Studio – Your destination for free technology learning and career growth.
Free library

Articles

Deep dives on .NET, React, cloud and everything in between — written by engineers, reviewed for accuracy and free to read.

In-depth Guides

Learn with real examples

Hands-on Tutorials

Build and practice

Interview Ready

Concepts, patterns & FAQs

Clear

C# Programming

Learn C# fundamentals, OOP, LINQ, collections, asynchronous programming and advanced concepts.

37 articles Updated Nov 08, 2026
SOLID Principles Introduction C# fundamentals

SOLID Principles Introduction

SOLID is a group of five design principles that help developers write maintainable, flexible and reusable code.

Nov 08, 2026 • 3 min read
File Handling and JSON Serialization in C# C# fundamentals

File Handling and JSON Serialization in C#

When our application runs, all data lives in RAM and disappears when the program closes. To keep user profiles, game scores, or settings across sessions, we convert our objects into text using serialization and write them into files on disk.

Nov 08, 2026 • 3 min read
IDisposable, Using Statement and Resource Management C# fundamentals

IDisposable, Using Statement and Resource Management

Applications use resources such as files, database connections, and network streams. These resources should be released when we finish using them. Otherwise, they may remain occupied longer than needed.

Nov 08, 2026 • 3 min read
Records vs Classes and Tuples in C# C# fundamentals

Records vs Classes and Tuples in C#

All three help us group related data, but they behave differently. A class is useful for objects with identity and behaviour. A record is designed for data-focused objects with value-based equality. A tuple is useful when we need to group a few values temporarily without creating a separate type.

Nov 08, 2026 • 3 min read
Pattern Matching in Modern C# C# fundamentals

Pattern Matching in Modern C#

Pattern matching allows us to check a value against a particular condition or type and execute code based on the result.

Nov 08, 2026 • 3 min read
Properties and Indexers – Get, Set, Init and Required C# fundamentals

Properties and Indexers – Get, Set, Init and Required

A property provides controlled access to a class field. A field stores data directly, whereas a property allows us to control how that data is read or modified.

Nov 08, 2026 • 3 min read
Partial Classes, Sealed Classes and Static Classes C# fundamentals

Partial Classes, Sealed Classes and Static Classes

Partial classes help organise large classes across multiple files. Sealed classes prevent inheritance. Static classes allow us to group reusable methods and properties without creating objects.

Nov 08, 2026 • 3 min read
Readonly vs Const in C# C# fundamentals

Readonly vs Const in C#

Both are used to prevent a field's value from being changed, but they work differently. A const value is fixed during compilation. A readonly field can be assigned at declaration or during object construction. We commonly use them for fixed application values, configuration and settings.

Nov 08, 2026 • 3 min read
Struct vs Class in C# C# fundamentals

Struct vs Class in C#

Both help us create custom types, but they behave differently when assigned, passed to methods or stored in collections. Choosing the right one helps us write efficient and maintainable applications.

Nov 08, 2026 • 3 min read
1 2 3 4