It does this by first converting the solution file to a valid MSBuild project then executing this project. If you're curious about what this project looks like, or want to tweak it for use in your automated build then you can get MSBuild to leave it on disk for you after a build.
Simply set the MSBuildEmitSolution environment variable to 1 before building and you'll find the newly created project file next to the original solution.
This will leave a file called
set MSBuildEmitSolution=1 msbuild <solution-name>.sln
<solution-name>.sln.projin the same directory - this is in the standard MSBuild XML format.