It seems clear to me that the Wolfram team puts an incredible amount of thought into designing functions and function signatures. You can find recordings of design sessions on YouTube, and I've personally never been on a software design team that puts this much effort into design. So, I think it's fair to say there was some reason. What follows is speculative, but based on personal experience.
Let's start with EuclideanDistance. As for consistency, all of the *Distance functions take exactly two arguments. So, as for memorization, if you're using *Distance, you need two arguments. This makes sense to me. It seems to me that distance is inherently a concept that involves two "things".
Now consider Midpoint. I can certainly see the appeal of two arguments. But putting things into lists often implies a certain semantic. For example, Line takes a list of points, because Line is intended as a graphics concept (not the "straight line" concept from geometry, which would be InfiniteLine, btw). Line can also be used as a region, and regions are often defined by vertices or cells or some component parts (i.e. lists of things). So, Line and related symbols work with lists. They could work with variable length argument lists, but so much work is done with lists in Mathematica that basing these signatures on lists makes sense. It also streamlines some very common patterns of composition.
To that last point, what if I had a Line or just a sequence (list) of coordinates in some dimension and I wanted to find all of the midpoints of each segment? The natural thing to do would be to partition the list and map Midpoint over the result. Of course you could MapApply, but the data is already in the form of pairs.
Alternatively, think of Midpoint as a region-based measure of a simple 1D region. Again, we will already be dealing with lists in a region context, so it makes sense for Midpoint to "align" with that context. From this perspective, midpoint isn't inherently about two things, but about a single thing that just coincidentally happens to be defined by two things (boundary points, as it happens).
Even though it takes a list, it makes sense that it's constrained to pairs. There are all sorts of "centers" that one can define for multiple points beyond two, and Mathematica already has functions for some of them: TriangleCenter can find all sorts of centers; RegionCentroid (and the related idea of RegionMeasure); various *Moment functions; statistical functions for central tendencies (e.g. Mean, which works on lists). So, if you have more than two points for which you need some sort of "center", you have lots of options. Midpoint is the 1D graphic/region version. Maybe it could have been called LineMidpoint or something, but that seems a bit overkill.
Anyway, it all seems very consistent to me.