There is a really great overview at developer.force.com on the multiple ways to integrate your applications with force.com:

  • Creating and exposing web services using the Apex programming language
  • Invoking external web services from Apex
  • Outbound messaging for invoking external web services when data changes
  • HTTP and REST integration
  • Email integration for inbound and outbound messaging
  • The Force.com Web Services API and associated toolkits, such as the AJAX Toolkit, Java, .NET, PHP and Adobe Flex integrations.
  • Syndication feeds via Force.com Sites