That's a great question! The answer is very simple, but I think our documentation doesn't make it clear yet.
The main part of Apollo is the client. The client works with any GraphQL server, including express-graphql (JS), Graphene (Python), graphql-ruby, Sangria (Scala). So no matter which server you pick, you can use Apollo in the client.
While the client is already quite advanced, we've only been experimenting with a few different things on the server side, and haven't yet converged on a definite solution.
There are quite a few moving parts on the server side, so it helps to know what packages are involved and how they relate to each other:
graphql-js is the GraphQL reference implementation maintained and developed by Facebook. It includes a bunch of useful things, like functions to parse, validate and execute GraphQL queries.
express-graphql, also maintained by Facebook, is a middleware for express that uses graphql-js under the hood to parse, validate and execute queries sent over HTTP.
graphql-tools is a package that I put together to make creating GraphQL schemas a bit easier. It uses the parser provided by graphql-js and produces a schema compatible with graphql-js, which means you can use it together with express-graphql, or anything else built on top of graphql-js.
apollo-server is currently just graphql-tools and express-graphql bundled together. Graphql-tools is used to create an executable schema from the schema language, which is then passed to express-graphql.
As you see, express-graphql and apollo-server are actually one and the same thing under the hood, so which one you use doesn't matter all that much.
The next release of apollo-server (almost ready) will be implemented in typescript and support HAPI and Koa in addition to Express and connect. graphql-tools will no longer be part of it, so it will be clearer what is part of the server and what is part of graphql-tools.
In the medium term, most of our efforts will be focused on Apollo client and the complementary native mobile clients which we're building, so our goal with the server is to have a community-driven open-source graphql-server which is built for and tested in production.