The key advantage of having a dedicated build machine (putting CI, unit tests and even automated builds aside) is to ensure you have a clean, predictable & reproducible build environment.
This alone should lead to more stable product releases. It helps you to find issues with your solution & code base earlier then once you've already deployed/released it. A common example could be components which had been GAC'd on a developer's machine but are missing from the deployed product.
Automated builds are useful because they remove the human element - i.e. they repeat the same steps every time (they aren't as prone to forgetting build steps, for example) - which gives you predictability. If you run the same build script with the same source you should get the same output. This is essential for proper release management.
As you develop a build environment it can be extended to provide more support to the development team - especially once the team starts to grow. The rest can be debated - implemented if you (or your team) can see the value in reducing risk or effort to your project.
Continuous Integration (CI) basically lets you know earlier if there are any conflicts with your project's source/solution - i.e. before the rest of your team gets a broken code base when they refresh their source from source control.
The main advantage here is resolving broken code bases faster - usually when it is still fresh in people's minds (since, in theory, they just committed changes to the source control repository). People do need to keep an eye on it however..