Is NServiceBus a ESB or lightweight ESB at all? or is it more like WCF with durable/ reliable messaging? It looks to me more like a messaging framework than ESB.
just wa
No, I would not think of NServiceBus as an ESB product, nor is it categorically an EAI tool in general.
If we're to find a comparison with other tools out there, NServiceBus is closer to the like of JMS api (e.g. spring-jms) and AMQP. It's a framework to help you with interacting with message-queues and implementing common messaging patterns within your application (e.g. pub/sub, request/reply, dead-lettering, "saga") using a friendly programming syntax.
Whereas an ESB product as traditionally known within the EAI industry, is a platform that facilitates the integration of many heterogeneous applications in an enterprise environment. Although different ESB products offer different features, they all share certain features in common that make them useful, the main ones being their wide range collection of connectors to various open and proprietary protocols and services (including message-queues, but also other things e.g. WS-*, sftp, SAP, Siebel, rdbms, xmpp, websockets/comet, corba, edi), and a full set of ready-to-use implementations of Enterprise Integration Patterns (as per the black book) so you don't have to reimplement them yourself in order to orchestrate complex integration logic such as transformations, conversions, routing, prioritization, business-rules, policy enforcement, validations, duplicate detection, ETL, and generally moving data around between applications.
NServiceBus provides no feature that's remotely related to performing any integration work, nor is it ever designed for that. It's something you'd use to implement messaging patterns within your application, but won't be something you'd pick up for an EAI project.