Recs.
Updated
SpecsUpdate
Pros
Pro Cross-platform build support
The fact that it is based on Java does not hinder TeamCity's ability to support different build environments. TeamCity in fact supports a large number of languages and tools for each of those languages (build runners and test frameworks).
Some of the languages/platforms that are supported include: Ruby, .NET, Java.
Pro Supports build chains
The user can easily compose dependencies between builds by adding snapshot and artifact dependencies, all on the one screen. All output of upstream builds is available to downstream builds. Triggering sets off the entire build chain and supports re-running of the portions of the chain that failed.
Cons
Con Passing version number
Although TeamCity provides an easy "Version labeling" option, it is hard to pass this version number to other build configurations, say from build A to build B. One way to do it is using a "Build-Chain" where a version project is the first in a build-chain shared by other projects.
Recommendations
Comments
Out of Date Pros + Cons
Con Expensive
TeamCity has a free tier which includes a maximum of 20 build configurations and up to 3 build agents. If you want to add 10 more configurations and 1 more agent, it will cost $299; unless you choose to buy an enterprise license which starts at $1999.