As to sanding required... it really depends. It depends on the condition of the wood, the species, the finish that is on it, how level it is, etc.
My floors were used when I put them down, so every single board was a few 64ths of an inch different height. They were also very very old maple, which made them very hard. It took many, many, many passes with a drum sander to get them all the same height. (You would have some boards be down to bare wood and some floors would still have a hard, shiny poly finish on them.
I might suggest you try renting a random orbit sander, not a drum sander. I used both. I doubt I could have cut the floors as hard as I did with a random orbit. But the rental drum sanders are just not heavy enough. Forget what they say about avoiding gouges with a drum sander -- that is easy to avoid. For me the hard thing to avoid was chatter. The spinning drum can bounce -- just a tiny bit -- as it is moving across the floor. You end up with light lines that run perpendicular to the flooring.
And start with the coarsest grit they have. When you're looking at that 18 grit paper that looks like it is covered with aquarium gravel, you think that is too harsh. It isn't. Our rental stores started with something around 24 grit for the random orbit sander. I might mail order some that is a bigger grit if that is the case for you.
For finish, I used Rubio Monocoat. It is a hard, durable finish that dries really fast. It is zero VOC. I will warn you: it isn't a shiny finish like polyurethane. You will be able to see/feel the grain of the wood. I actually like that, but not everyone does. You can also spot refinish. It's not quite as easy as "just sand and re-apply" ... but it is very do-able. Poly finishes generally require re-sanding and re-finishing corner to corner.