General Parts Advice

for those who have decided to DIY, the sheer volume of parts at your disposal can be overwhelming. looking at new parts alone, amazon can inundate you with options, and for those considering used parts (which you should be), ebay is apparently endless. these are some things to consider when constructing your first server.
CPU
the processor you choose is based mainly on purpose of your server. for example, if you want to do nothing more than house data, this doesnt really matter much at all; you can go with just about anything. if you want to do something involving compute, usually single core speed wins the day since many applications dont take advantage of multi-core advancement. if you know you want to run an application which does utilize multi-core, then many people go with AMD due to its low price / high core count ratio. here is some good general purpose use for each manufacturer:
Intel

if you are looking for an intel chip, its usually for one of two reasons: you want to do basic single core stuff or you want to use the built-in iGPU for transcode. this applies to most people, so if youre not sure where you fall, its probably here. look for intel CPUs usually not older than 8th generation (the intel 8000 series). since servers usually arent cpu intensive, go for the lowest number you can find, like the -100 series. i run an intel i3 10105 and it sits around 4% use all the time.
if you want to use it for video transcode, make sure the cpu doesnt end in an F. for example, the 10100 has built in graphics (UHD630) but the 10100F is the exact same chip without the iGPU, meaning it has no graphics whatsoever.
when shopping, look for a cpu with the stock cooler included (pictured above). advanced or high-end cooling is not necessary on home servers that arent being used for mining crypto. my stock fan doesnt go above 30% ever and my cpu sits at 30 degrees most of the day.
stay away from the high end desktop market, like xeon. dont get me wrong, xeons are great chips, but the additional features they give you come at a cost, and i dont mean a more expensive cpu. actually, xeons are usually cheaper. however, they use more electricity, run hotter, and require more expensive motherboards. most times, a regular intel cpu will suffice for what you need and be far simpler to manage.
AMD

AMD is great for servers where many cores can be utilized. for the same price as an intel chip, amd usually will give you an additional two cores. they run as cool as intel, so go with stock cooling if you can. stay away from amd cpus older than the ryzen series, which was released in march of 2017.
ryzen has a similar naming scheme as intel, where chips with built in graphics end in a G. not that it matters, because amd chips cannot be used for transcode, so if you need that, go to intel.
the same advice from intel applies here: stay away from threadripper and epyc. not that they arent great parts, but the odds that you will need what they are offering (especially for the greatly increased cost) is low. most times, the standard ryzen cpus do more than you will ever need. dont get upsold on features you will never use/need.
Motherboard
since this will be the foundation of your entire build, doing this right will be massively helpful as you move forward. we have already covered why finding an ATX motherboard is useful in another post, but there are some other things to consider. if you choose to go with the recommended cpus from above, you will have a great many options at your disposal. look for motherboards that are ATX, have 4-6 SATA ports, and have 2 or more full size PCIe slots. you will see people talking about features like IPMI and ECC ram, but none of that applies to the beginner homelabber. those are enterprise features which are slick for people running full size server racks in datacenters, but unnecessary for someone with a computer tower under their desk.
one thing you should look for is ethernet speeds over 1 gigabit. 2.5 would be even better. also another bonus is multiple ethernet ports. this is because servers usually only have 2 cables connected to them: the power cord and and a CAT6 ethernet cable. thats it. no monitor, keyboard, or mouse. so since the ethernet cable is how you do 100% of everything on your server, having a fast connection is important, as is having multiple connections in case of failure.
RAM
lots is being said about DDR4 vs DDR5 and ECC vs non-ECC. unless you buy a late-model cpu or something from the high end spectrum, all of these arguments are moot. the reason for this is only the 12th gen intel or 7000 ryzen and later cpus support DDR5. anything before that and you are in DDR4 land, which is fine, since for servers memory speed is not mission critical.
the ECC and non-ECC (error correcting code) is hotly debated. the shortened story is, if you have to run a server 24×7 that requires greater then five 9’s uptime, you should consider ECC, especially if your data is being written to frequently and is irreplaceable. banking servers come to mind. however, the run-of-the-mill cpus named above do not support ECC, nor do their motherboards, so if you purchased one of those, dont worry about ECC ram since you cant run it on that hardware anyway. not that you need to since this use-case is usually enterprise level.
Graphics Cards

GPUs are usually useless in servers. if you want to have an amd cpu and still do transcode, thats usually when a gpu comes into play. or if you have existing hardware that wont do transcode because its too old, that also makes sense. otherwise, gpus dont do much in servers unless youre running an application which utilizes one. those are rare. also, the gpus which do transcode best are usually nvidia quadro cards, like the p400. if you are thinking about the gaming gpus you are familiar with, these are something much different. no big heatsinks or beefy power requirements, these quadro cards are small, cool, and quiet. dont get upsold to the latest rtx cards which are over $1000 per card. also, just like with cpus, the amd cards dont transcode so well – stick with nvidia.
Hard Drives
this is a post unto itself. here it is.
Cases
Power Supplies
since servers sit mostly idle, your power requirements will be minimal. for example, i run an intel 10105 on a z490 mobo, an nvidia p400 gpu, two SSDs, and six HDDs. my psu is a 550W evga i got used and its barely being utilized. the biggest consideration is the efficiency rating (look for 80+ and above) and its SATA power since those connectors will be used to power the drives. all the major brands are safe in this regard, and as long as your case is anything except ITX, a standard size psu will be fine. dont overthink this part.