Chapters
- Getting started with C# Language
- Verbatim Strings
- Operators
- Extension Methods
- Collection Initializers
- String Interpolation
- An overview of C# collections
- Constructors and Finalizers
- Static Classes
- Keywords
- Object Oriented Programming In C#
- Inheritance
- Generics
- Using Statement
- Using Directive
- Reflection
- Null-Coalescing Operator
- Getting Started: Json with C#
- LINQ Queries
- C# 7.0 Features
- C# 6.0 Features
- C# 5.0 Features
- C# 4.0 Features
- C# 3.0 Features
- String Escape Sequences
- Exception Handling
- Null-conditional Operators
- Built-in Types
- Lambda expressions
- Async-Await
- Properties
- Threading
- Methods
- Yield Keyword
- Events
- Common String Operations
- Expression Trees
- Overload Resolution
- String.Format
- nameof Operator
- Unsafe Code in .NET
- Initializing Properties
- BindingList<T>
- ILGenerator
- Object initializers
- XML Documentation Comments
- Preprocessor directives
- Dynamic type
- Anonymous types
- Structs
- Tuples
- Enum
- Access Modifiers
- Task Parallel Library
- Attributes
- Guid
- Singleton Implementation
- Delegates
- Nullable types
- Garbage Collector in .Net
- Networking
- Arrays
- Equality Operator
- Lock Statement
- Action Filters
- XmlDocument and the System.Xml namespace
- DateTime Methods
- BackgroundWorker
- Polymorphism
- Indexer
- IDisposable interface
- Aliases of built-in types
- Immutability
- XDocument and the System.Xml.Linq namespace
- Performing HTTP requests
- Generating Random Numbers in C#
- Looping
- Named Arguments
- Diagnostics
- Interfaces
- IEnumerable
- Naming Conventions
- Checked and Unchecked
- Recursion
- Functional Programming
- Literals
- Casting
- NullReferenceException
- Func delegates
- LINQ to XML
- Hash Functions
- Handling FormatException when converting string to other types
- Cryptography (System.Security.Cryptography)
- INotifyPropertyChanged interface
- Value type vs Reference type
- IQueryable interface
- Task Parallel Library (TPL) Dataflow Constructs
- Stream
- Runtime Compile
- Conditional Statements
- Interoperability
- Overflow
- Equals and GetHashCode
- Type Conversion
- Parallel LINQ (PLINQ)
- String Manipulation
- String Concatenate
- Partial class and methods
- Stopwatches
- Regex Parsing
- C# Script
- Async/await, Backgroundworker, Task and Thread Examples
- Timers
- Function with multiple return values
- Binary Serialization
- Making a variable thread safe
- IComparable
- Code Contracts
- Iterators
- AssemblyInfo.cs Examples
- File and Stream I/O
- Code Contracts and Assertions
- Caching
- Implementing Flyweight Design Pattern
- StringBuilder
- Implementing Decorator Design Pattern
- Accessing Databases
- T4 Code Generation
- Microsoft.Exchange.WebServices
- .NET Compiler Platform (Roslyn)
- Data Annotation
- Using SQLite in C#
- System.Management.Automation
- FileSystemWatcher
- System.DirectoryServices.Protocols.LdapConnection
- Named and Optional Arguments
- Comments and regions
- C# Authentication handler
- Pointers & Unsafe Code
- Pointers
- How to use C# Structs to create a Union type (Similar to C Unions)
- BigInteger
- Dependency Injection
- Reactive Extensions (Rx)
- Creational Design Patterns
- Creating a Console Application using a Plain-Text Editor and the C# Compiler (csc.exe)
- Reading and writing .zip files
- Lambda Expressions
- Generic Lambda Query Builder
- Import Google Contacts
- CLSCompliantAttribute
- ObservableCollection<T>
- Synchronization Context in Async-Await
- ICloneable
- Read & Understand Stacktraces
- Linq to Objects
- ASP.NET Identity
- Access network shared folder with username and password
- Asynchronous Socket
- Structural Design Patterns
- O(n) Algorithm for circular rotation of an array
- Creating Own MessageBox in Windows Form Application
- Including Font Resources
- Using json.net
- Windows Communication Foundation
Source : http://goalkicker.com/CSharpBook/