How do I run ethernet and speaker cabling in 2 story home?
Having done a LOT of this over the years, your options are basically - find something else to follow, go plenum-rated and use ductwork if you have it as @Comintern suggests in a comment, run wires on the surface or go though a lot of agony trying not to open up walls. In many cases, opening up walls would be a lot less agony. There are often inconvenient things like firestops in the middle of walls, and you can get into all sorts of excitement you'd just as soon not when trying to drill blind or around corners or any sort of fancy work like that. Yes, long flexible drills are made - without a long flexible camera to be sure what the heck one is drilling into, you can get into a world of misery trying to use one...

My prime suggestion - open the walls, run conduit, never have to do this again (if you run the conduit right so that you can pull these wires out when you need to install whatever everything is using in 10 years.) In large part you may be able to minimize opening first floor walls if you can distribute across the basement and have short runs up to the first floor. The run from basement to attic will probably require it - you can distribute much of the second floor through the attic to minimize opening walls up there.

If you can't use plenum rated cables in air ducts (and DON'T use non-plenum rated cables in air ducts, since you and your family are the ones that will be subject to smoke inhalation for the savings of a few pennies) look around the plumbing for possible routes you might get a network wire in. However, most non-owner-built homes have miserable access to the plumbing, so that may not save you much if any wall opening. Builders who are not going to live there seem to love just sealing it all up in drywall to make more work when service is required...

Look around for things like stacked closets to try and locate space where you can open the walls with minimum area to repair/repaint to run your conduit or wires.