I have a ASP.NET website running on Windows Server 2003 and I would like to move it to a new server with a more recent OS. Would it be OK to jump directly to Windows Server 2012 or should I see how the site runs on Windows Server 2008 first?
It certainly can work, but this is one area where it's entirely dependent upon your code. It may work, or it may not.
This is where doing a test upgrade would be a good thing to test out.
I really wouldn't bother upgrading anything to Server 2008 now, given that there are two newer major versions of Windows server that have been released since.
Your choices are really between 2008R2 or Server 2012/R2, at this point. I would advise that there's probably very little point in seeing how it runs on one version before trying to move it to another version, since there's not necessarily going to be any correlation there.
Pick what version you want to upgrade to and give it a shot. (With a backup/test copy first, of course.) If it works, great. Then you can do performance testing without it being a waste of time. Depending on those results, you'd do performance tuning and decide whether or not your application can function acceptably on the new platform.
If it doesn't work, then you can either try to get it working (compatibility-checking, troubleshooting and debugging), or try on a different version of the OS and see if it works there.