Writing
All posts
Practical C#, .NET, and ASP.NET Core tutorials.
7 posts in Performance

MethodTimer by Fody in .NET
Stopwatch timing clutter adds up fast. MethodTimer.Fody weaves duration logging at compile time with a [Time] attribute, optional custom loggers and parameter values in messages.

Getting Started with Concurrency Control in .NET
An overview of .NET concurrency primitives like lock, Lock, Semaphore, and SemaphoreSlim for thread-safe access to shared data.

Bulk Delete with EF Core and Dapper in .NET
Dapper is amazingly fast and easy to use, although EF Core can be as fast if used properly.

Bulk Update with EF Core and Dapper in .NET
Dapper is amazingly fast and easy to use, although EF Core can be as fast if used properly.

Improvements in .NET 9
.NET 9 brings performance boosts, LINQ optimizations, exception handling improvements, Time-Ordered GUIDs, feature switches, and more for better efficiency.

Benchmark Code using BecnhamarkDotNet
BenchmarkDotNet is an invaluable tool with its high precision, customizability and straightforward implementation.

Best and Worst Way to Loop a List in C#
As simple as looping may seem, I've noticed that many people have differing opinions and expectations. I would also like to share a more advanced approach.
The next issue lands Thursday.
Join 4,000+ .NET engineers. Free, focused, and easy to leave.