Difference between BrokeredMessage class in Microsoft.ServiceBus and Message class in Microsoft.Azure.ServiceBus

If it's a new project to use Azure Service Bus, I would recommend the following:

  • Prefer the new .NET Standard client (Microsoft.Azure.ServiceBus) with Message.
  • Be careful with documentation and various resources. They mostly cater to the old client (hopefully MSFT doco soon to change).
  • If you need transport transactions spanning different entities, the new client can't provide it yet.
  • If you need management operations, the new client won't provide it. Ever. Instead you'd have to use Management library or wait till a replacement package for NamespaceManager is out.
  • If you have old systems emitting messages sent as serialized data and not Stream, implementations using new Client have to know about it and use extension method provided by the client to process those messages. New client only deals with Stream based messages.

As Gaurav Mantiri mentioned that Microsoft.Azure.ServiceBus is the newer version of the library built using .Net Standard.

You could get the detail information from github.

This is the next generation Service Bus .NET client library that focuses on queues & topics. This library is built using .NET Standard 1.3.