Every time I need to setup a new server, unless the application(s) I’m planning to host on it requires different, my go to operating system has been CentOS for the past decade or so, mostly because of how rock solid it is (I don’t think I’ve ever had a CentOS server crash on me). That’s partly because it is a derivative from Red Hat Linux. In fact, Red Hat not only owns the trademarks for CentOS, it also employees their primary developers.
I hardly ever setup a Linux server with a GUI so most of the time I install it with the minimalist image which works great for my LAMP servers, SAMBA servers and script servers. Because of its association with Red Hat, most mainstream Linux applications have support and documentation for CentOS. Another extremely important thing to look for in server operating systems is the lifecycle, meaning how long will the CentOS team maintain the release of a version and provide security updates and such. Most CentOS versions have a lifecycle for a decade so you won’t have to worry about being forced to upgrade anytime soon after you implement a CentOS server.
I wouldn’t recommend using CentOS as a workstation at all given that its GUI is extremely slimmed down but for a server operating system you are hard pressed to find a OS as solid as CentOS.