Q:

IBM Webshpere MQ .net client, which is more suitble amqmdnet or XMS

I have a IBM websphere MQ .net client application which uses amqmdnet dll. It works fine but I am not able to read messages in event(subscription) based manner. Reading online I found that XMS library has in-built subscriber methods. 
I am also looking at scalability of the .net client application which will allow a cluster of nodes reading the same MQ pipeline. My objective is to create a .net message consumer which supports

point-to-point & publish/subscribe method
Cluster of nodes connecting to same queue and consuming messages.
Remove the messages from pipeline once it is persisted.

Which of the method is preferred in such scenario?

A:

Both IBM MQ classes for .NET(amqmdnet.dll) and IBM Message Service API for .NET(XMS .NET) support most features of IBM MQ:  Both support point-to-point & publish/subscribe. Both support multiple clients connecting and consuming from a single queue. Both support units of work. Both are fully supported by IBM.
XMS .NET supports MessageListener objects to simplify consuming from a queue.  In IBM MQ classes for .NET you would need to write your own function to consume from a queue.
IBM Technote "XMS .NET – An Overview has a good overview of XMS .NET features.

