The vCenter Server must run a version equal or higher than the ESX hosts, so while you can have mixed versions of hosts in a vCenter Server, you have to have an upgraded vCenter server available first.
You can totally upgrade in place. If the situation doesn't require the vCenter Server statistics and event data to be kept and the environment isn't heavily customized or can easily be re-created, I personally prefer to do a fresh install of vCenter Server, move the hosts to the new vCenter Server, then take each host one at a time and reinstall them and rejoin them to vCenter.