Here's the honest truth: your first homelab should be small, cheap, and immediately useful. Fancy racks and Epyc servers come later, if at all. What you want on day one is one small machine running a few services that solve real problems in your house. Everything else is a hobby.
Hardware: a used mini PC. I recommend a refurbished Lenovo ThinkCentre M720q or M920q, a Dell OptiPlex Micro, or an HP EliteDesk Mini — the so-called 'Tiny/Mini/Micro' family. You can find one with a 6th–9th gen i5, 16GB RAM, and a 256GB NVMe on eBay for $150–$250. It sips power (10–20W idle), runs silent, and sits on a shelf. That's it. That's the whole server.
Operating system: Proxmox. It's a free open-source hypervisor that lets you run multiple VMs and containers on one machine. Install it from a USB drive, set a static IP, and you're done in 20 minutes. Proxmox is the homelab standard for a reason — it's stable, well-documented, and the community is enormous.
First service: Pi-hole or AdGuard Home. Install it in a Proxmox LXC container, point your router's DNS to it, and instantly every device in your house has network-wide ad blocking. This is the service that makes the rest of the family understand why you have a server in the closet. It works on phones, smart TVs, game consoles — everything.
Second service: Tailscale. It's a free mesh VPN that connects your devices over the internet as if they were on the same LAN. Install it on your mini PC and your phone — now you can access your home network from anywhere without opening any ports on your router. Combine with Pi-hole and you get ad blocking on your phone at the coffee shop.
Third service: a file share. TrueNAS in a VM or Samba in a container. You can point time machine backups, document storage, or media at it. Add a second drive and mirror them with ZFS. This is the moment your homelab stops being a toy and starts replacing things you'd otherwise pay for (Dropbox, iCloud, Backblaze).
From there, the list grows: Home Assistant for smart home control, Jellyfin or Plex for media, Uptime Kuma for monitoring, Nextcloud for file sync, *arr stack for media management. The key is to add one service at a time, learn it properly, and don't chase the dragon. A homelab with three working services beats one with twelve that are constantly breaking.
When you outgrow the mini PC — and you will — the upgrade path is a second mini PC (for Proxmox cluster), then a proper small server in a short rack, then you're deep in the hobby and you know exactly what you want. That trajectory takes years. Nobody starts there.