Oh boy...that's a loaded question...
How many users are you planning for? Do you want high availability failover? Is your database load balanced (meaning multiple instances) or a single noded system? What does your current system architecture look like and does it work for you?
There are a LOT of factors to consider when picking out new hardware.
We typically just aim big. Our new Responder Servers are HP ProLiant DL360 Gen 9s with an 8-core Xeon CPU and 32GB of RAM. The ArcGIS web server is also an HP ProLiant DL360 Gen 9s, but with a 12 core Xeon CPU and 64GB of RAM (sized huge because it's going to become a workhorse over the next year). The Oracle database server is an HP ProLiant with a Quad-core Xeon and 32GM of RAM.
Check ESRI system requirements. They do not support windows 10 yet.
ESRI is a little glitch in windows 10. Windows 7 Works great.
If you change SQL server from 2008 to 2016 there is some tweaking on the database to do.
Any new computer with at least 4 gig of ram works. Personal experience if you want fast go with 12 gig ram.
The change from 10.2.1a to 10.2.1c is relatively painless
Has anyone virtualized their ArcFM and Responder environmen? Pros and Cons of it.
I haven't virtualized any of the GIS servers here and we're the last of the corporate systems (besides SCADA) that hasn't. I just have not had good luck with our VMs. A fair number of our desktops are virtualized without many issues. We typically have to bump up the RAM for those VMs to 4GB to be able to run Desktop decently.
I know a number of utilities have their application stacks virtualized and have very few issues. Esri has a guide on virtualization of ArcServer here: Virtualization and ArcGIS Server—Installation Guides (10.4.1) | ArcGIS for Server Esri would be the heavy lifter here with ArcServer while Responder wouldn't be working as hard. I also know that SE uses virtualized systems for all their testing, so they have a fair amount of experience with virtualization.
As for desktop, the only thing I avoid is putting my heavy editors on VM because it just can't keep up. You can also run into some limitations because of the lack of a higher-end graphics card on VMs. For viewing with ArcMap? Virtualize it.