When I learned lean software development, I abandoned year-long planning at work and at home. This year, I broke my rule. I made a New Year’s resolution. I decided to broaden my skills so I could ship a full-stack enterprise web app completely on my own. No back-end developers, no product managers, no UI designers, and no vibe coding. Since I wrote Ruby years ago and Rails is having a Renaissance right now, I wrote down the following and taped it to my bedroom door:
In 2025, Kerrick is a Full-Stack Programmer
Develop & deploy Ruby on Rails apps, covered by automated tests, to real users.
I cracked open the newest edition of “The Pickaxe,” devoured Agile Web Development With Rails 7, re-read The Well-Grounded Rubyist, pre-ordered The Rails 8 Way, and acquired Effective Testing with RSpec 3. I love learning from books—reading, reflection and elaboration, cross-referencing, memorization, and application of the concepts—all at a pace that matches my level of focus in the moment. By February I was well on my way to meeting my goals. I modeled a problem domain, created a Rails app, and started to develop a minimal feature set with TDD.

But the curse of annual decision-making is just as present in my personal life as it is in every business. For exciting reasons I detailed in my last post, I’ve shelved those books, scratched out “Ruby on Rails,” and replaced it with “Full-Stack.” My new plan is to learn C#, .NET, T-SQL, and the web parts of the Microsoft ecosystem. But when I went to find the books to learn the tech stack—the ones considered as iconic to .NET developers as Programming Ruby is to rubyists—I came to a shocking realization.
There are too many books!
In the Ruby and Rails ecosystems I can count the number of books published annually on one hand, and there’s little overlap in their content and audience. In one year I could read the latest edition of every important Ruby and Rails book ever published.
The C# and .NET world, though, has choice overload. Since I make enterprise web information systems, I ignored anything outside of that scope: MAUI, Unity, nanoFramework, WinUI, ML.NET, and others. Even after I pared the options down to books available on the O’Reilly Learning Platform subscription provided by my employer and eliminated low-rated books and older editions, it’s a lot:
- 53 books
- 30,656 pages
- 757 hours, 36 minutes
Most of the books teach C# and .NET, ASP.NET, Blazor, or T-SQL. I also found some .NET-specific coverage of wider topics: architecture and design, concurrency, automated tests, functional programming, and dependency injection.
Evaluating My Options
I read the title, author, publisher, back cover, and Amazon and GoodReads ratings of every book I found. Here are the 53 books that stood out as candidates to learn the Microsoft ecosystem. I also explain why each of them has earned a commitment from me: I’ll read the front matter and skim the index of each one.
Books About C# and .NET
I’ve been told that C# is to Ruby as the term “.NET” is to the ruby standard library, ruby’s default gems, and MRI combined. Microsoft is known to re-use names, so I’m not too surprised.
Click to hide or show books about C# and .NET and why I’m considering each.
A. Hejlsberg, M. Torgersen, S. Wiltamuth, and P. Golde, The C# Programming Language, Fourth Edition. Addison-Wesley Professional, 2010.
This book is old, covering C# 4.0, but worth consideration. “The ␣ Programming Language” is a title format often used for books written by the language’s creator. This is no exception. The insights provided by language’s creators are incredibly valuable.
J. Sharp, Microsoft Visual C# Step by Step. Microsoft Press, 2022.
Microsoft stewards the language and the runtime. This book from their imprint also promises to teach Visual Studio, an IDE I have no familiarity with. I’ll still likely use Rider because I’ve been using WebStorm and RubyMine for years, but I should get familiar with the most common IDE.
Mark J. Price’s .NET Trilogy
- M. J. Price, C# 13 and .NET 9 – Modern Cross-Platform Development Fundamentals, Ninth Edition. Packt Publishing, 2024.
- M. J. Price, Tools and Skills for .NET 8. Packt Publishing, 2024.
- M. J. Price, Apps and Services with .NET 8, Second Edition. Packt Publishing, 2023.
This trilogy offers a 10,000 foot view. Sometimes shallow coverage of a wide area can be appropriate, and .NET is certainly a very wide subject.
Books That Teach Universal Topics in C#
- M. Jamro, C# Data Structures and Algorithms, Second Edition. Packt Publishing, 2024.
- M. Eland, Refactoring with C#. Packt Publishing, 2023.
- D. Nesteruk, Design Patterns in .NET 6: Reusable Approaches in C# and F# for Object-Oriented Software Design. Apress, 2022.
- C. Marcotte and A. Zebdi, An Atypical ASP.NET Core 6 Design Patterns Guide, Second Edition. Packt Publishing, 2022.
- M. Seemann, S. van Deursen, Dependency Injection Principles, Practices, and Patterns. Manning, 2019.
Even though I’m already familiar with these topics, I should get value from these books. Reading Design Patterns in Ruby taught me more than how to use Ruby to solve familiar problems. It also showed me where the language and standard library made writing that code unnecessary.
Unit Testing Texts for C#
- R. Osherove, The Art of Unit Testing: With Examples in C#, Second Edition. Manning, 2013.
- V. Khorikov, Unit Testing Principles, Practices, and Patterns. Manning, 2020.
I am very comfortable with Minitest in Ruby. When I started to learn Rails, though, I was surprised by how different RSpec was. In case .NET testing is equally unlike the xUnit style, I should learn the idioms.
Comprehensive Coverage of C# and .NET
- M. Michaelis, Essential C# 12.0. Addison-Wesley, 2023.
- C. Nagel, Professional C and .NET, 2021 Edition. Wrox, 2021.
- A. Troelsen and P. Japikse, Pro C# 10 with .NET 6: Foundational Principles and Practices in Programming. Apress, 2022.
- J. Albahari, C# 12 in a Nutshell. O’Reilly Media, 2023.
- I. Griffiths, Programming C# 12. O’Reilly Media, 2024.
- J. Rodenburg, Code like a Pro in C#. Manning, 2021.
- D. Metzgar, .NET in Action, Second Edition. Manning, 2024.
Plenty of publishers compete for this spot. Manning split their entry across two books, and O’Reilly seems to have two authors competing for the same audience.
Options for Going Deeper
- S. Love, The C# Type System. No Starch Press, 2023.
- J. Skeet, C# in Depth, Fourth Edition. Manning, 2019.
- E. Ingebrigtsen, Metaprogramming in C#. Packt Publishing, 2023.
None of these try to introduce the language, but each seems to go deeper than most other C# books. I intend to become an expert .NET developer, so I’m sure I’ll read at least one of these.
Using C# Like a Native Speaker
- B. Wagner, Effective C#: 50 Specific Ways to Improve Your C#, Third Edition. Addison-Wesley Professional, 2016.
- B. Wagner, More Effective C#: 50 Specific Ways to Improve Your C#, Second Edition. Addison-Wesley Professional, 2017.
- K. Cwalina, J. Barton, and B. Abrams, Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries, Third Edition. Addison-Wesley Professional, 2020.
I don’t just want to write C# that compiles. I want to write idiomatic C#.
Memory Management
- T. Williams, Effective .NET Memory Management. Packt Publishing, 2024.
- K. Kokosa, K. Gosse, and C. Nasarre, Pro .NET Memory Management: For Better Code, Performance, and Scalability, Second Edition. Apress, 2024.
As a front end developer I only have to worry about RAM as it relates to memory leaks. On the server, it becomes a much more crucial topic.
Books About ASP.NET
Most rubyists learned Ruby for Rails. I’m learning C# for ASP.NET.
Click to hide or show books about ASP.NET and why I’m considering each.
D. Esposito, Programming ASP.NET Core, First Edition. Microsoft Press, 2018.
Any book published by Microsoft Press automatically earns consideration, since it’s their framework.
A. Tanure, ASP.NET Core 9.0 Essentials. Packt Publishing, 2025.
This book claims to cover continuous delivery, cloud-native applications, and Docker. I’ve really enjoyed using Kamal, so I’d like to get it working with ASP.NET. Perhaps this book will help me reach that goal.
Comprehensive Coverage of ASP.NET
- A. Lock, ASP.NET Core in Action, Third Edition. Manning, 2023.
- A. Freeman, Pro ASP.NET Core 7, Tenth Edition. Manning, 2023.
With each of these exceeding 950 pages and 30 hours, I’ll probably only have time for one.
Deep Dives Into Part of the Framework
- J. Smith, Entity Framework Core in Action, Second Edition. Manning, 2021.
- V. De Sanctis, Building Web APIs with ASP.NET Core. Manning, 2023.
- X. Yan, Web API Development with ASP.NET Core 8. Packt Publishing, 2024.
- A. Freeman, Pro ASP.NET Core Identity: Under the Hood with Authentication and Authorization in ASP.NET Core 5 and 6 Applications. Apress, 2021.
- M. Brind, ASP.NET Core Razor Pages in Action. Manning, 2022.
The books in the previous section at least touch upon each of these topics. In case I need to know more, I’m glad there are deeper options.
Books About Blazor
Our next front-end at work will use Blazor, not Angular. Even though there’s a lot to love about .NET, Blazor is why I’m learning the platform.
Click to hide or show books about Blazor and why I’m considering each.
- D. Pine, Learning Blazor. O’Reilly Media, 2022.
- C. Sainty, Blazor in Action. Manning, 2022.
- P. Bazyluk, Blazor Web Development Cookbook. Packt Publishing, 2024.
Microsoft released Blazor in 2018. If it moves as fast as JavaScript frameworks do, I wonder if three year old books are still relevant. I value books for their guided tuition, which usually has much stronger conceptual integrity than online documentation. In the case of Blazor, though, I’ll probably need to rely on both.
Books about Blazor WebAssembly
- T. Wright, Blazor WebAssembly By Example, Second Edition. Packt Publishing, 2023.
- A. Mozaffar, Mastering Blazor WebAssembly. Packt Publishing, 2023.
I’m new enough to the .NET ecosystem that I’m not yet sure whether Blazor WebAssembly is meaningfully different from Blazor in developer experience or knowledge required. The existence of these books implies it might be.
Books About T-SQL
As a front-end developer by trade, my experience with SQL is limited. I read Learning SQL last year, so I understand the basics, but I’m completely unfamiliar with Microsoft’s T-SQL.
Click to hide or show books about T-SQL and why I’m considering each.
- I. Ben-Gan, T-SQL Fundamentals, Fourth Edition. Microsoft Press, 2023.
- I. Ben-Gan, A. Machanic, D Sarka, and K. Farlee, T-SQL Querying. Microsoft Press, 2015.
- I. Ben-Gan, T-SQL Window Functions: For data analysis and beyond, Second Edition. Microsoft Press, 2019.
I won’t know how much T-SQL I’ll need to write until I know how much I can rely on Entity Framework and LINQ. I’ll certainly read T-SQL Fundamentals, though, since I’ve heard great things about Itzik Ben-Gan’s writing.
Other .NET Development Books
Writing great software in a programming culture that you’re not familiar with is hard. I’ve seen plenty of non-idiomatic TypeScript written by developers who usually write Java and C#. Ruby can be written like dynamically typed, garbage-collected C, but that sacrifices much of what’s great about Ruby. The more books I read about advanced topics or edge cases written with C#, the more .NET-like I’ll be able to write.
Click to hide or show other .NET development books and why I’m considering each.
Functional Programming
- E. Buonanno, Functional Programming in C#, Second Edition. Manning, 2022.
- S. J. Painter, Functional Programming with C#. O’Reilly Media, 2023.
I enjoy functional programming in JavaScript. I enjoyed the sister to Buonanno’s book, Functional Programming in JavaScript.
Concurrency
- N. Dobovizki, C# Concurrency. Manning, 2025.
- S. Cleary, Concurrency in C# Cookbook, Second Edition. O’Reilly Media, 2019.
- V. Sarcar, Parallel Programming with C# and .NET: Fundamentals of Concurrency and Asynchrony Behind Fast-Paced Applications. Apress, 2024.
I don’t yet know how important concurrency is in .NET web development. My familiarity with RxJS thanks to its integration with Angular should help me understand Rx.NET faster.
Architecture & Design
- J. Visser, S. Rigal, G. Wijnholds, P. van Eck, and R. van der Leek, Building Maintainable Software, C# Edition. O’Reilly Media, 2016.
- D. Esposito, Clean Architecture with .NET. Microsoft Press, 2024.
- C. Marcotte, Architecting ASP.NET Core Applications, Third Edition. Packt Publishing, 2024.
- P. Michaels, Software Architecture by Example: Using C# and .NET. Apress, 2022.
It seems 2025 may be the year of code-writing AI agents. It has yet to be shown that they are capable of software design, however. Understanding object-oriented design and architecture will be important when you’re babysitting an “enthusiastic intern.” It is worth the effort to design software well, even if you plan to have an AI write every line.
I Need Your Help
Have you read any of these books? Are there any C# or .NET books you’ve liked that I missed? I can’t possibly read all thirty thousand pages this year, so I’d love to read your opinions in the comments section below this article.
My Next Steps
Over the next week I plan to read the preface, introduction, foreword, and table of contents of all 53 of these books. I’ll use that information, plus any advice you leave in the comments on this article, to choose fifteen to read this year, at a pace of five per quarter. Subscribe to my email list to see which books I commit to reading, and to get notified when I post new articles as I learn.
4 Comments
As in eating an elephant……take it one bite at a time……
It’s interesting how you’re balancing personal resolutions and the unpredictability of yearly planning. I’ve often struggled with that too—do you find it harder to stick to resolutions in the face of unexpected challenges?
It’s great to see someone so committed to learning full-stack development. Books have been such a big part of my journey as well, but sometimes it’s hard to make the jump from theory to hands-on coding. How do you ensure that you’re applying what you read directly into your projects?
I’ve been writing C# for the last 11 years and have to say that from .Net6 onward there are noticeable quality of life improvements in style and syntax that it”s worth referring to study materials written in the last 10 years.
Anything .Net Framework 4.6 and earlier is “history” to help learn the backstory about things. It will not be the best “how-to” material.
I don’t read many books because Microsoft documentation is fantastic. Coming from other languages, you will be shocked how amazing the docs are. Just choose a subject and google “C# (subject)” and use the learn.microsoft.com links.