MathLink is the standard communication protocol between the kernel and frontend. It is available also for other applications and allows other programs to communicate with Mathematica. A development environment for MathLink applications is part of the standard Mathematica software release.
The Mathematica kernel is the perfect choice as driver/server for your application. It interfaces well with many existing protocols and frontends, and it can certainly perform any calculations that may be necessary.
A majority of talks at the recent Mathematica developer conference were about interfacing with Mathematica in one way or another. The technology is finally here and ready to be used.

Interfaces and MathLink products are developed by Wolfram Research, in collaboration with Wolfram Research, and by independent software developers.
The Parallel Computing Toolkit (PCT)
brings parallelism to Mathematica, developed by Roman Maeder;
soon to be released by Wolfram Research and MathDirect, http://www.mathdirect.com/products/par/
Mathematica Link for Excel (Excel-Link)
a Mathematica-Excel interface;
by Episoft/Wolfram Research, http://www.wolfram.com/products/applications/excel_link/
Database Access Kit (DBAK)
an interface with any datasource known to the MDAC, the Microsoft Data Access Components (ODBC);
under development by Wolfram Research (β test completed).
J/Link
a Mathematica-Java interface (two-way);
soon to be released by Todd Gayley of Linkobjects, http://www.linkobjects.com/
Perl-Link
Math::ematica is a Perl module allowing access to Perl from Mathematica, developed by Ulrich Pfeifer, pfeifer@wait.de;
Allows using the large number of existing Perl extensions (most are freely available) from Mathematica. Available from CPAN.
Mathematica for Active-X Toolkit
Visual Basic interface to the kernel;
under development by Anton Rowe of Episoft, http://www.episoft.com/
Using the Mathematica kernel on the server side:
mod_perl or CGI and the Perl link (MathConsult and several others)
J/Link and a simple Java servlet that interfaces with Mathematica (Linkobjects)
ASP and the VB link (Episoft)
Applets and MathLink-over-HTTP (Linkobjects)
Custom-built interfaces by MathConsult, using, for example,
DBI: a Perl database interface with drivers for most commercial and free SQL (and other) databases
DDE: a Perl link to Microsoft DDE (Excel, Reuters, Bloomberg, ...)
JDBC: a Java DB interface
your own protocol
For C/C++, you write a little driver/dispatch program,
for Java classes, J/Link provides this functionality.
See also MathCode C++ (MathCore AB, http://www.mathcore.com/)