You can't really put your phones on 192.168.1.x/255.255.255.0 and everything else on 192.168.x.x/255.255.0.0, because you have overlapping network definitions, then. I mean... it might work, at least in some cases (for some network stacks, etc), but it's not the "right" way to do it.
Traditionally, there are problems with really large subnets in Windows workstation environments, because of the amount of broadcast traffic they transmit. Although I think that's really more related to the actual number of Windows PCs, than to the subnet. Maybe a Windows expert can shed more light on this area.
My advice would be to keep your subnets small, but use several of them if necessary. And try to separate them physically. It's annoying (although certainly not impossible) to have multiple subnets over the same physical wire--especially when more than one tries to use DHCP.
I would probably consider a configuration something like this:
Workstations/Phones 192.168.1.xxx (presumably they use DHCP)
Servers/VMs 192.168.2.xxx (they're probably all in the server closet, so can be on a separate physical subnet)
Printers 192.168.3.xxx (These probably all have static IPs)
Public here would be used if you have a wireless network, or ethernet jacks in a conference room that visiters can use--you want these to be isolated physically, so you can run a more strict firewall here, and keep strangers from sniffing your ethernet traffic, or using less restricting firewall settings to get into your server, or downloading porn, or whatever other mischief they might find to do.
The main advantage to keeping your workstations and servers on separate subnets really has more to do with security. That way you can put up a firewall between the two, and keep random "passers by" on your workstation network plugging in their home laptop, iPad, or whatever, and endangering the privacy/security of your servers.
If your printers use DHCP, you may want them on the same network as the workstations... Or you could set up two physical ethernet segments (or even three)--one for workstations, one for phones, one for printers. I'm not sure what the advantage would be here. And many VoIP phones act as a one-port ethernet switch, to allow the phone and PC to connect where only one ethernet jack is present. If you use this feature, you'll need your phones and workstations on the same physical LAN anyway. (And if you don't use this, you need to account for people who might choose to plug a PC into their phone's ethernet port--whether out of convenience, ignorance, or malice).
The reason I put servers and VMs on the same network is because they're likely in the same physical room. But you could potentially split them.
So in a nutshell... to me, the main reason to subnet (before running out of address space) is for security, not for extra addresses. That doesn't mean it's the only valid school of thought.