Ultimately, it is used to decrease hardware costs by condensing a failover cluster to a single machine. Thus decreasing costs dramatically while providing the same services. Server roles and features are generally designed to operate in isolation. For example, Windows Server 2019 requires a certificate authority and a domain controller to exist on independent servers with independent instances of windows server. This is because additional roles and features adds areas of potential failure as well as adding visible security risks (placing a certificate authority on a domain controller poses the potential for root access to the root certificate). This directly motivates demand for virtual private servers in order to retain conflicting server roles and features on a single hosting machine. Also, the advent of virtual machine encrypted networks decreases pass-through risks that might have otherwise discouraged VPS usage as a legitimate hosting server.
On the other hand, there are still some applications which are only supported on Windows and not on Linux. Hence, if you use technologies such as ASP.NET and ASP, then you may be better off with Windows rather than Linux.
Think of a shared server as a large apartment complex, and all of the individual apartments are rented by other website owners. All of you need a place to live — just like your website’s files — but going out to buy a huge family home would be too expensive for your needs. Sharing common areas and utilities in an apartment block helps keep costs down. And the same is true for shared hosting.
Of course, one of the most important factors in selecting a VPS is the cost attached to it. VPS providers will charge more for managed hosting and for using high end resources. Hence, you need to select a VPS which will not only operate effectively, but will also not cause a sizeable hole in your wallet.
If you are familiar with hosting control panels, shell commands, and you have basic server administration and troubleshooting skills, then unmanaged VPS is the way to go. Note that while you purchase self managed VPS, you should be capable of managing applications, software, services installed on your VPS. Also, you must know installation/uninstallations, resource monitoring, server performance tweaking and troubleshooting of any technical issues.