I'm looking at running a server on a Windows machine for a game available on Steam. I can either install Steam on the server and use that, or use SteamCMD to run the server instead. Are there any pros/cons between using either?
They're essentially the same, but the command line version is that: a more compact command line version that won't require any gui and therefore no window system to run on the server. Since you're running a Windows machine, I wouldn't expect any significant differences, but the command line version should use less ressource in case those are a concern.
Edit: In case you'd like to manage your server through a terminal (like SSH), the command line version would be the one that's easier to use (since it won't require any gui interaction). If you're using some kind of remote desktop connection this doesn't really matter either.
The biggest difference is that it is easier to update a gameserver using SteamCMD as you can just enter a single command to do it using the
+app_update [id] parameter combined with
+login. SteamCMD also accepts anonymous login to access certain servers. This gets rid of the need to have your account details on a machine you don't necessarily need to have them on. It also means you can update those servers without logging out of your Steam on your actual computer.