I know there are various thread out there related to this problem but i was unable to take any of the responses on those thread and make it work on my server.
So let try
Based on BEN answer I realized that I was missing the PRIMARY DND SUFFIX.
Mainly in order to find out your FQDN, you need to simply: 1) Open a Command Prompt 2) Type "ipconfig /all"
Read your HOST NAME + PRIMARY DNS SUFFIX.
My DNS SUFFIX was emtpy so i went and added using this link
http://www.simpledns.com/kb.aspx?kbid=1227
And then rebooted the machine.
Now the code works like a charm. Thanks BEN !!!
In addition to the message/delivery-status attachment, the DSN will usually have the returned message. For this sort of issue you should post the headers of the returned message and the DSN as well.
It looks to me like your server has accepted the message, but has an error transmitting it onwards. If your server had rejected it, your code would have thrown an exception. So your server Machine1 accepted it, attempted to transmit it to email.net, but email.net rejected it. Machine1 then generated a DSN (delivery status notification, in your case an NDR = Non-Delivery Report).
In other words it is a configuration error with the email server not a code problem. Almost certainly the issue is that the email server is not set up with an FQDN as you stated.
As a configuration problem, it belongs on ServerFault.