It's only as complicated as you want to make it. A waypoint is the same as a pushpin on a map. You put it there for whatever reason you like. Maybe it's an intersection, or a restauarant, or a campground, or anything else you like. No rules. It is just a point that you want to remember for some reason.OK i admit the spoof. but seriously.
does it really need to be so complicated?
A route is a path between points. You may use waypoints to influence the direction of the path if you like. But you don't have to. Many folks first set some waypoints down then use them them to define the route. That is a convenience, not a requirement.
A via point is like a mini-waypoint. It *is* part of a route, used to influence the path taken. When you don't like the path between point A and point B and drag it so it uses this road instead of that road you are creating a via point.
Some mapping software also has the concept of a stop. With that software a route is something like: start via via stop via stop via via finish. The mapping software fills in the turn-by-turn information between the listed points.
The turn-by-turn information is something that that you don't care about. Mostly. If you care at all its because you are fighting with software that wants you to go this way when you want to go that way.
I personally find Garmin software to be terrible for my use. I constantly had to fight with the software. It worked great if my desire was "take me to 5th and Main". It sucked when my desire was "take me to 5th and Main via these twisty curvy roads that sometimes crossed". Usually I am trying to do the latter.