Connect Arduino Mega Board to Internet

I need to build a device using Arduion Mega Board which should be able to receive / send data to a web server.

Which is the best way to achieve this with a minimum cost of implementation? I mean the best economical & reliable way.

Is using a GMS / GPRS module more convinient than all other ways - if I communicate via SMS messaging system?

Which is the best way to achieve this with a minimum cost of implementation? I mean the best economical & reliable way.

The most economical way will not be the easiest way, nor will it necessarily be the most reliable. Which is most important?

Is using a GMS / GPRS module more convinient than all other ways

Not even close.

Which is the best way to achieve this with a minimum cost of implementation? I mean the best economical & reliable way.

Try the below ethernet shield connected to a router.

http://www.ebay.com/itm/Ethernet-Shield-W5100-for-Arduino-Main-Board-2009-UNO-Mega-1280-MEGA-2560-/361009941325?pt=LH_DefaultDomain_0&hash=item540dde8b4d