This is one of those cases where the answer is “it depends”. Are you just trying to get to 2012 so you have another year before extended support ends, or are you trying to get current?
Do you plan to keep the existing hardware, or get a replacement server?
Getting from 2008 to current will require a lot of upgrades (2008 → 2012, 2012 → 2016…)
If you’ve never done this before, I’d suggest googling. Microsoft has some good docs on it, and also here is one that does a decent job of describing some of the options. Unfortunately this isn’t just a “run the installer and upgrade” type of job.
Before you do anything, examine your existing backup, restore and recovery methodology.
Take inventory of third party applications and integration.
Build a new environment and migrate to that in stages.
test run: Copy data over to the new environment and test.
cutover run: refresh data from the existing to the new and test again.
This is a chance to have new hardware in place.
Virtualize on the hypervisor of your choosing.
If you don’t feel able to do so enlist the assistance of an IT services provider.
If this seems like too large of an undertaking consider migration to a public cloud provider.
Btw, MS Server 2008 R2 ESUs (Extended Security Updates) were made available for a fee but at this point one would need to pay for years 1,2,3 of support which would likely be larger than the cost of a new MS Server OS license.
If you keep the same hardware, you should upgrade to 2012r2 to 2016 to 2019 to 2022. You may be able to upgrade from 2016 directly to 2022, I’ve done this on one of my servers and it worked OK, but I wasn’t really risking anything as it was just a member server for virus scanner and one other service.
I’ve done the 200r2 up to 2016 migration and everything works, but it does carry some old baggage with it. Going this far, and assuming new hardware, you would probably be better off using the migration tools to migrate the services to a new server running 2022.
Alternate, how big is your system? And what types of services do you really need? Zentyal seems to work in the testing that I’ve done so far and the community edition is free.
Windows as a file server is OK, but moving to a Truenas system is more flexible. I moved off Windows as a NAS back in 2008-2010 when I built my first Freenas server. Again, Windows works and is easy for most people to get working, but Truenas will give more features and flexibility.
In theory, you can run your DC in a VM inside Truenas. I would not recommend it, but it could be done.
You definitely should upgrade to Win 2019. Reason being is there are multitudes of issues most importantly security and updates. Migration should be easyish depending on what program you want to use migrating files and the like. As a rule of thumb you should have two servers setting in a rack. One for the production machine and the other to test updates and such before they are applied to the production machine. Just a thought though.