It really depends on the project. If you're wanting to control the drone's flight from the PC to learn about control algorithms and aerial maneuvers and low-level protocol code then ELRS and a tiny whoop would be a good start. ELRS uses CRSF as the control protocol so first step would be to implement that on PC.
If you're looking for aerial photography, photogrammetry, mapping, etc then off-the-shelf solutions are the way to go, at least to start. I don't know as much about that end of things but QGroundControl is a good starting point.