I have been asked by my supervisor to develop a web application using either ASP.NET and Silverlight.NET That manages a GSM modem through COM port, I have succeeded in performing most of the required tasks except the mail notification when a message is received by the GSM modem,in fact, this task requires listening to COM port and executing an action when receiving data, I have searched for a solution but so far I only come across solutions for desktop C# applications.
This task isn't suitable for an ASP.NET application, which is, by nature, a browser-based request/response paradigm. For a modem, you need a long-running service to listen. I'm not sure it's a good fit for/possible with Silverlight either.
Your best option is to write either a WinForms, or better yet, Windows Service app to listen on the port and handle that functionality, while having the user-interaction happen through ASP.NET.
Your boss may or may not understand the technical differences, but it's perfectly valid to break up functionality into different executables/apps to handle different tasks.
This is actualy the norm when you think about it. Such a design makes this site possible. S.O. uses a database of some sort to store data, a web server to perform logic and stream the data in a browser-readable format, and you're using a browser to view the data served by the web server.
Using the right tool for the job is critical to good design. ASP.NET and Silverlight are the wrong tool for listenening to a COM port.
If you need to communicate with the WinForms app or Windows Service, you can expose functions via WCF and add service references to them.