If you need a cloud-based service bus or a simple to use queue/topic/routing/pub-sub service, then Azure Service Bus is a very good choice at a reasonable price and performance. Typically on-premise we'd use RabbitMQ because it "just works", but if you're building a "cloud-first" application, then this is the one to go with. It's especially easy to integrate with if you're already embedded in the Microsoft ecosystem.
Multiple systems to interface for a task in the company (example: to sell an item your POS must communicate with the inventory software, then to accounting, then to service, etc).
When a task must bring information from several external services.
When you have to deal with multiple APIs.
Not recommended for:
Data transformation (although Talend has a software for that that works with Talend ESB)
Acting as a basic queuing service it works very well.
One of the best parts is that Azure Service Bus can work over HTTPS which helps in strict firewall situations. There is a performance hit if you choose to use HTTPS.
The routing capabilities are quite good when using topics and subscriptions. You can apply filters using a pseudo-SQL-like language though the correlation filters are quick and easy options.
Costs are very reasonable at low-ish volumes. If you're processing 10's of millions of messages a month... it may be a different story.
RabbitMQ is simple and awesome... but so is Azure Service Bus. Both accomplish the same thing but in different environments. If you're building a cloud-native application - especially one that is serverless by design - Azure Service Bus is the only real choice in Azure. It works well, it's performance, and it's reasonably priced in the Standard tier. From our testing, RMQ is more performant, but it's hard to compare service-based implementations vs RMQ installed on VMs.