NServiceBus 6.0

NServiceBus 6.0

Build (much) better .NET systems

The next major release of NServiceBus is here, featuring considerable performance improvements, top to bottom async support and an even cleaner API.

This is no longer the most recent version of NServiceBus. Check out NServiceBus 7 with support for .NET Core.

What's new in NServiceBus 6.0

Major performance

Process twice as many messages on MSMQ plus get astonishing throughput gains in Azure and RabbitMQ using message batching, async, and other optimizations.

Cleaner API

Make fewer mistakes and achieve success more easily in message handlers and Sagas with a cleaner, more focused API.

More reliable

Backed by our extensive suite of acceptance tests, end-to-end tests, performance tests, and wire-compatibility tests, NServiceBus is now more reliable than ever.

Async/Await support

Make blocking threads on I/O operations a thing of the past with our top to bottom async support.

Cloud consistency

Get on-premises level consistency guarantees in the cloud with atomic send + receive on Azure Service Bus.

More scalable

Scale out MSMQ in a new way, without the distributor component.

More discoverable config

Free yourself from App.config with a code-focused configuration API.

Read the upgrade guide

Learn everything you need to upgrade to NServiceBus 6.0 with our extensive documentation resources

Start a new project

See how easy it is to get started with NServiceBus 6 with our step-by-step tutorial.

Talk to a Solution Architect

Get in touch with us if you need help upgrading to NServiceBus 6.0

How to upgrade NServiceBus 5.x handlers to 6.0

Frequently asked questions

How do I download NServiceBus 6?

The most up-to-date version of NServiceBus can be downloaded from NuGet from within Visual Studio.

Now that NServiceBus 6 has been released, how long will NServiceBus Version 5 be supported for?

According to our support policy, NServiceBus Version 5 will retain mainstream support until October 11, 2018.

Do you have any resources on async/await?

If you have not used async/await before, you may want to get started with our Async/Await webinar series. You can also watch our screencast showing how to update NServiceBus handlers to async/await, and then read our guidance on asynchronous handlers for more in-depth information. Finally, check out our Async/await tips and tricks post for the best tips, tools, and tricks for managing async code effectively.

Do you have beginner resources for learning NServiceBus?

We have a new NServiceBus step-by-step tutorial that will teach you how to get started with NServiceBus, send commands, publish events, and rety errors.

Will the Learning NServiceBus book by David Boike be updated for NServiceBus 6?

There are currently no plans to update the book. Instead, we recommend our new NServiceBus step-by-step tutorial, which is targeted for NServiceBus Version 6.

What happened to IBus?

In NServiceBus 6 we replaced the IBus with a new set of context-specific interfaces that are more intuitive and easier to test. Find out more in the article NService... umm, where's the bus?

What happened to the Saga [Unique] attribute?

Previously, this attribute was required on saga data to identify the correlation property, like an OrderId, that would match up with a message property to identify the correct saga. In Version 6 we made API improvements that make the attribute unnecessary. NServiceBus can now determine the correlation property based on the saga's message mappings, and alert you if you forget to define them. Details on the improvements to the Saga API can be found in NServiceBus Sagas, simplified.

I have a different question.

We would love to help! Get in touch with a Solution Architect and we'll do whatever we can for you.


This list of resources will help you learn about NServiceBus 6.0 and related topics.

We will continue to update this list as we add additional content.