You can't upgrade directly from 9 to 12 - you'll need to do an intermediate upgrade first e.g. from 9 to 11.2 then from 11.2 to 12.
Upgrades can be messy in the sense that they leave behind old folders/files that are no longer needed. I would be tempted, if possible, to do the upgrades on your existing server, install 12c software on your new windows 2012 server & import your 12c database from the old server.
90% of users' problems can be resolved by punching them - the other 10% by switching off their PCs.
How big is the data on the 9i server? If not very large, you could do a consistant expdp of the 9i database and then use impdp to load it into the new 12C database without any upgrading. Also unless you plan to run multiple databases in the new 12C database, make the 12C database without CDB (multitenant container databases). It's a nice idea but worthless and over complicated if your running one production database on the server.
You do not need a parachute to skydive. You only need a parachute to skydive twice.