Best of .NETApril 2025

  1. 1
    Article
    Avatar of milanjovanovicMilan Jovanović·1y

    Understanding Microservices: Core Concepts and Benefits

    Microservices are independently deployable services centered around business domains, offering flexibility, adaptability, and targeted scaling. They enable parallel development, technology diversity, and organizational alignment but introduce challenges like distributed system complexity, operational overhead, and data consistency issues. Effective microservices adoption often starts small and evolves over time, focusing on the most beneficial parts of the existing architecture.

  2. 2
    Article
    Avatar of techworld-with-milanTech World With Milan·1y

    Why C#?

    C#, a programming language developed by Microsoft, is known for its modern, multi-paradigm capabilities and has continuously evolved to include features like object-oriented programming, generics, lambdas, LINQ, and async/await. It benefits from a robust .NET ecosystem, excellent tooling like Visual Studio, and a vast library collection via NuGet. C# is suitable for developing cross-platform applications across web, mobile, desktop, and cloud environments, supported by extensive documentation and a vibrant community.

  3. 3
    Article
    Avatar of medium_jsMedium·1y

    Building AI Agents with Google ADK (Agent Development Kit) and MCP (Model Context Protocol) with Gemini 2.5 Pro

    Discover how to build intelligent AI agents with Google’s Agent Development Kit (ADK) and integrate them with external tools using the Model Context Protocol (MCP) and Gemini 2.5 Pro. This comprehensive guide walks through the core concepts of ADK, its agent types, and tools, along with step-by-step implementation instructions for creating and managing agents, using MCP servers for real-world API interactions, and troubleshooting common issues.

  4. 4
    Article
    Avatar of dotnet.NET Blog·1y

    Build a Model Context Protocol (MCP) server in C#

    Learn how to build a Model Context Protocol (MCP) server using C#. The MCP facilitates communication between AI models and applications. Using the MCP C# SDK, developers can create both servers and clients. The guide includes steps for setting up a server, defining tools, integrating with existing APIs or data, and publishing the server as a container image.

  5. 5
    Article
    Avatar of devblogsDevBlogs·1y

    Announcing Windows Community Toolkit v8.2

    Version 8.2 of the Windows Community Toolkit has been released, bringing updates such as Native AOT support, UWP support for .NET 9, and SwitchConverter improvements. The update also includes enhancements like AcrylicBrush for WinUI 3 and various bug fixes. Windows Community Toolkit Labs has introduced new experiments, including DependencyPropertyGenerator and OpacityMaskView, to further aid developers. Community contributions continue to play a significant role in these developments.

  6. 6
    Article
    Avatar of csharpcornerC# Corner·1y

    .NET 9 Apps Are Faster Than Ever

    Microsoft’s .NET 9 introduces significant performance improvements such as enhanced JIT compilation, faster JSON serialization, reduced garbage collection pauses, and better HTTP/3 handling. Benchmark comparisons between .NET 8 and .NET 9 show substantial gains in speed, reduced memory usage, and lower CPU usage under load, making applications faster and more efficient with minimal code changes.

  7. 7
    Article
    Avatar of aspnetASP.NET Blog·1y

    .NET 10 Preview 3 is now available!

    The third preview release of .NET 10 introduces enhancements across the .NET runtime, SDK, libraries, C#, ASP.NET Core, Blazor, and .NET MAUI. Notable updates include AOT-safe constructors in libraries, improved telemetry support, new features for ML.NET, Blazor, MAUI, and more. Full release notes are available for a detailed overview.

  8. 8
    Video
    Avatar of nickchapsasNick Chapsas·1y

    The "in" keyword in C# is Awesome

    The 'in' keyword in C# allows structs to be passed by reference while making them read-only within the method for performance optimization. This avoids costly copying of large structs. However, if the struct isn't marked as readonly, hidden defensive copies may occur, reducing performance benefits. Combining 'in' with 'readonly struct' or read-only members maximizes performance gains.

  9. 9
    Article
    Avatar of jetbrainsJetBrains·1y

    The .NET Tools Blog

    C# offers a variety of data structures designed for different use cases. The choice of the right collection depends on factors such as the type of operations, performance considerations, and the structure of the data.

  10. 10
    Article
    Avatar of jetbrainsJetBrains·1y

    dotCover, dotMemory, dotPeek, and dotTrace 2025.1 Have Arrived!

    dotCover 2025.1, dotMemory 2025.1, dotPeek 2025.1, and dotTrace 2025.1 have been released. The updates include enhanced support for the latest C# features in dotPeek, full Visual Studio integration for dotMemory, tabbed snapshot analysis in dotTrace, and various minor improvements and bug fixes in dotCover. These enhancements are also available in JetBrains Rider and ReSharper 2025.1.

  11. 11
    Video
    Avatar of zoranhorvatZoran Horvat·1y

    How Fast is LINQ? The Benchmark Results May Surprise You!

    The post demonstrates the performance of LINQ against traditional for loops through a series of benchmarks. It reveals that LINQ is significantly faster, even outperforming optimized versions using ReadOnlySpan. The post explains LINQ's efficient implementation and its ability to handle complex operations more swiftly than manual code, highlighting LINQ's exceptional speed in .NET development.

  12. 12
    Article
    Avatar of telerikTelerik·1y

    10 New Features in EF 9

    Entity Framework Core (EF Core) 9 introduces significant enhancements focused on performance, developer productivity, and scalability. Key improvements include advanced LINQ query methods, better handling of complex types, reduced SQL round trips, expanded array mapping with read-only collections, optimized SQL generation, efficient query translation with the logical negation operator, and new methods for database seeding. The EF 9 version also brings refined support for Azure Cosmos DB, enhancing query performance and reducing costs. These updates are part of the .NET 9 release and aim to simplify data access in ASP.NET Core applications.

  13. 13
    Article
    Avatar of syncfusionSyncfusion·1y

    What’s New in C# 14? Key Features and Updates You Need to Know

    C# 14 introduces significant new features aimed at enhancing development productivity and code readability. Key updates include implicit span conversions, nameof unbound generics, lambda parameter modifiers, the field keyword for property accessors, and the ability to have partial events and constructors. These additions are expected to make C# a more expressive and efficient language for developers.

  14. 14
    Video
    Avatar of nickchapsasNick Chapsas·1y

    The New Extension Members of C# are INSANE

    Nick introduces a new feature in .NET called extension members, which allows developers to add instance and static members to types using the new 'extension' keyword. This feature enhances existing extension methods by enabling extension properties and extending functionality without being limited to static methods. Nick demonstrates how to implement and use these new features through various examples and discusses the potential impact on how developers write C# code.

  15. 15
    Video
    Avatar of nickchapsasNick Chapsas·1y

    Don't use async void in C#

    Async void methods in C# should generally be avoided because they can't be properly awaited, leading to issues with error handling and control flow. The only appropriate use of async void is in event handlers, where tasks are not returned.

  16. 16
    Article
    Avatar of devblogsDevBlogs·1y

    .NET Aspire 9.2 is Now Available with New Ways to Deploy

    The latest release of .NET Aspire 9.2 includes new dashboard features and introduces 'publishers' for deployment. Key enhancements are the Resource Graph, custom resource URLs, deep linking for Azure integrations, and built-in custom HTTP commands. Developers are advised about breaking changes for Azure SQL Server and Azure PostgreSQL. Users can now deploy applications to Docker Compose, Kubernetes, and Azure using the new publisher feature.

  17. 17
    Video
    Avatar of nickchapsasNick Chapsas·1y

    The LINQ trap in .NET

    Understanding the deferred execution in LINQ is crucial as it can cause unexpected data changes in .NET. LINQ methods like where, select, and take build a query rather than executing immediately. This allows adding conditions dynamically, but beware of data changes before execution, as they will reflect in the results. Knowing these rules makes LINQ a powerful tool.

  18. 18
    Article
    Avatar of infoworldInfoWorld·1y

    How to use guard clauses in C#

    Guard clauses in C# help improve code readability and maintainability by eliminating unnecessary nested constructs and branches. They are used to validate conditions or input parameters, stopping the execution of methods early if criteria are not met. This practice prevents runtime exceptions and ensures valid data processing. The post provides practical code examples and highlights the advantages of using guard clauses over traditional validation methods.

  19. 19
    Article
    Avatar of mwaseemzakirWaseem .NET Newsletter·1y

    Wolverine as Mediator in .NET

    With MediatR going commercial, developers are exploring alternatives. Wolverine, a free NuGet package, offers next-generation .NET mediator and message bus capabilities. Using Wolverine involves simple naming conventions and no special interfaces, making it a streamlined choice for handling messages in .NET applications. It includes features like fluent validation and can be configured to use only core mediator services to keep applications lean and efficient.

  20. 20
    Article
    Avatar of andrewlock.NET Escapades·1y

    Going beyond singleton, scoped, and transient lifetimes

    The post explores experimental dependency injection scopes beyond the standard Singleton, Scoped, and Transient lifetimes in .NET Core. It discusses hypothetical lifetimes such as tenant-scoped, pooled, and time-based (drifter) services, inspired by a podcast discussion. The post details implementations of these lifetimes, focusing particularly on time-based services, and highlights their characteristics and limitations. The implementation challenges, particularly with IDisposable services, are also covered.

  21. 21
    Article
    Avatar of devblogsDevBlogs·1y

    ASP.NET Core OData Web API Template Preview Release

    The ASP.NET Core OData Web API Template Pack public preview release is now available, designed for .NET 8.0 and above. This template simplifies creating ASP.NET Core Web API projects with OData support and offers features like OData query options, OpenAPI (Swagger) support, and case insensitive routing. Users can install the template via the dotnet CLI or Visual Studio IDE. Feedback is encouraged to improve this new release.

  22. 22
    Article
    Avatar of socketdevSocket·1y

    Introducing .NET Support in Socket

    Socket has announced public beta support for .NET, offering enhanced security and supply chain protection for developers using C# and the .NET ecosystem. This includes deep package inspection, automatic detection of risky updates, and improved SBOM accuracy. The integration aims to provide seamless security without disrupting workflows. Additionally, the complexities of .NET dependency resolution and the importance of lock files for consistent, secure builds are highlighted.

  23. 23
    Video
    Avatar of nickchapsasNick Chapsas·1y

    ArrayPool in .NET is insanely fast

    ArrayPool.Shared allows you to rent and reuse arrays to skip garbage collection, perfect for high-performance scenarios like JSON parsing, file I/O, or handling thousands of requests per second. Always return the array to the pool when done, and clear it if it contains sensitive data.

  24. 24
    Article
    Avatar of jbogardThe Barley Architect·1y

    AutoMapper and MediatR Licensing Update

    AutoMapper and MediatR are transitioning to a dual licensing model to ensure their long-term sustainability. The new model will make these libraries free for OSS developers, individuals, hobbyists, non-profits, startups, and non-commercial use, while commercial entities will need to obtain paid licenses. The aim is to provide value beyond basic access and avoid per-seat licensing to make the process simpler. Pricing details and licensing tiers are still being determined, with plans to launch soon.

  25. 25
    Video
    Avatar of nickchapsasNick Chapsas·1y

    ref structs in C# are INSANE!

    Ref structs in C# are special kinds of structs that must remain on the stack, making them incredibly fast and safe for high-performance scenarios. They allow for high-speed memory access and manipulation without allocations but come with strict rules such as not being boxable, not usable in async methods, and not storable on the heap.