Building Local AI Agents: Semantic Kernel and Ollama in C# - Laurent Kempé
Laurent Kempé is an experienced Team Leader & Distinguished Solution Architect with a passion for shipping high-quality products. In this post, he explores Microsoft’s Semantic Kernel Agents Framework...
Abusing await with a result type to achieve rust-like error propagation in C#
Rust allows you to propagate errors automatically with the ? keyword, short-circuiting the methods execution and returning the error. Previously, we attempted to modify the IL to propagate errors with...
MCPSharp: Build Model Context Protocol (MCP) Servers with .NET
MCPSharp is a .NET library that helps you build Model Context Protocol (MCP) servers - the standardized API protocol used by AI assistants and models. With MCPSharp, you can create MCP-compliant tools...
Building an AI-Powered .NET API with Ollama and Microsoft.Extensions.AI | Anto Subash
Anto Subash shares a tutorial on building an AI-powered .NET API with Ollama and Microsoft.Extensions.AI. The post covers prerequisites, understanding the components of Ollama and Microsoft.Extensions...
ModelContextProtocol.NET - C# SDK for AI Model Integration
# ModelContextProtocol.NET  A C# SDK implementation of the Model Context Protocol (MCP), enabling seamless integratio...
Microsoft.Extensions.AI: Simplifying AI Integration for .NET Partners
Microsoft.Extensions.AI is an innovative .NET library that equips platform developers with a cohesive layer of C# abstractions, simplifying the interaction with AI services such as Large Language Mode...
Performance Improvements in .NET 9
Azure Developers - .NET Aspire Day 2024. Join us on September 18th as we dive deep into building world-class cloud native applications with .NET and Azure. Stephen Toub - MSFT Partner Software Enginee...
Type Unions for C# Proposal
A proposal for type unions (aka discriminated unions) in C#. This proposal aims to introduce type unions to C# programming language, providing developers with a powerful tool for handling complex data...
.NET 9 Preview 6 Now Available!
.NET 9 Preview 6 is now available! It’s a great time to check out the latest .NET 9 Preview with major enhancements across the .NET Runtime, SDK, libraries, C#, and frameworks including ASP.NET Core, ...
@chrlschn - C# Discriminated Unions and .NET Channels
@chrlschn - C# Discriminated Unions and .NET Channels - Jul 6, 2024 - Summary.NET channels are an easy way to achieve high throughput, concurrent/parallel processing of information without the need to...
OpenAI Unveils OpenAI Library for .NET | InfoWorld
Microsoft collaborates with OpenAI to release an official OpenAI library for .NET developers. The library supports the entire OpenAI API, including Assistants v2 and Chat Completions, and the latest G...
Why you should batch message processing and how to do it with .NET AsyncEnumerable
AsyncEnumerable is a sneaky abstraction that allows simplified and performant usage for iterating on pull-based and push-based sources. Pull-based approach involves querying specific data sources like...
General Availability of .NET Aspire: Simplifying .NET Cloud-Native Development
General Availability of .NET Aspire: Simplifying .NET Cloud-Native Development - .NET Aspire is a new stack that streamlines development of .NET cloud-native services and is now generally available. Y...
Whats new in Orleans 8 for Scalable Distributed Applications
Orleans is a cross-platform framework for building robust, scalable distributed applications. Orleans 8 introduces new features including live migration of grains and IAsyncEnumerable support. The rec...
Building a scalable gateway with .NET for Microsoft AI
The Microsoft AI team builds comprehensive content, services, platforms, and technology for consumers to get the information they want on any device, anywhere, and for enterprises to improve their cus...
Deep .NET: Deep Dive on LINQ with Stephen Toub and Scott Hanselman

Lets start to explore one of .NETs favorite features, LINQ (Language Integrated Query). LINQ easily enables developers to write query expressions with a declarative query syntax that allow them to per...
Deep Dive on LINQ with Stephen Toub

Lets start to explore one of .NETs favorite features, LINQ (Language Integrated Query). LINQ easily enables developers to write query expressions with a declarative query syntax that allow them to per...
What’s New in Rider 2024.1 - Monitor Performance, Sticky Lines, New Project Dialog Updates
Rider 2024.1 introduces a new monitoring tool window to track application performance and gather metrics, sticky lines in the editor for easier code navigation, and an updated New Project dialog for q...
C# Markup 2 - Concise next-gen C# Markup for .NET UI frameworks
C# Markup 2 for Uno Platform supports multiple UI frameworks, including the excellent Uno Platform. Uno is one of the best and most mature .NET UI frameworks, offering an impressive breadth of feature...
Using YARP as an API Gateway and Rate Limiter
In this post, we’re taking a look at YARP (Yet Another Reverse Proxy) as a way to rate limit your APIs by using it as an API gateway. Last week I posted a blog about rate limiting in your C# applicati...