Bill Wagner
Bill Wagner is responsible for the C# area of https://docs.microsoft.com. He creates learning materials for developers interested in the C# language and .NET. He's a member of the ECMA C# Standards Committee and the .NET Foundation board of directors. He is President of the Humanitarian Toolbox. Before joining Microsoft, he was awarded Microsoft Regional Director and .NET MVP for 10+years. He is the author of Effective C# and More Effective C#.
Detailed Biography
Bill Wagner is responsible for the C# area of https://docs.microsoft.com. He creates learning materials for developers interested in the C# language and .NET. He's a member of the ECMA C# Standards Committee and the .NET Foundation board of directors. He is President of the Humanitarian Toolbox. Before joining Microsoft, he was awarded Microsoft Regional Director and .NET MVP for 10+years. He is the author of Effective C# and More Effective C#.
Contact Information:
Articles Authored
-
What’s New in C# 11
Last updated: Friday, December 26, 2025
Published in: CODE Focus Magazine: 2022 - Vol. 19 - Issue 1 - .NET 7.0
Bill Wagner explains that C# 11 organizes its advances around four themes—improved developer productivity, object initialization and creation, generic math support, and runtime performance—with the first two likely most impactful in everyday code. He surveys features such as raw string literals, newlines in interpolations, UTF-8 string literals, pattern matching on Span, and list patterns to make code more concise and readable; plus required members, auto-default structs, extended nameof scope, and generic attributes to improve object initialization. He also highlights runtime-focused enhancements like ref fields, file-local types, and cached delegate conversions that boost performance.
-
Introducing C# 9.0
Last updated: Friday, December 26, 2025
Published in: CODE Focus Magazine: 2020 - Vol. 17 - Issue 1 - .NET 5.0
In this overview, Bill Wagner presents C# 9.0—shipped with .NET 5—as a set of language enhancements aimed at modern workloads and cloud-native, concise, and more robust code; he highlights major additions (top-level statements, records and init-only setters, richer pattern matching), performance/interop tools (native ints, function pointers, SkipLocalsInit), fit-and-finish improvements, and source-generator support, explaining how each reduces boilerplate, improves safety, or boosts performance.

