Let me start with my personal experience. I probably spent most of my time coding ASM manually on 68000 (Amiga) and, before that, on 6502 (C16, C64). It was way before I gained any decent knowledge in software engineering, so my approach was rather ugly (lots of dissassembling of existing code, trying to figure out "how they did it", etc). Then, later on, working on my never-finished PhD research on compilers and automatic parallelisation I spent quite a deal of time with X86 (mostly 486) and MIPS (on Silicon Graphics), although rarely writing any ASM manually, but often generating or analyzing it. Then for years I stayed rather away from hardware level, with exception to some occasional hobby projects on microcontrollers, until last year when I started working on my 6502 emulator in Rust, found this Forum and sunk in the rabbit hole totally

Now I'm probably more on 65816 side, playing a little bit with task schedulling/context switching, etc.
In terms of preferences I quite enjoy the 65816 and the power it gives in comparison to 6502. Tha later one feels a little bit like MC - you allocate all available memory for your project, do static adressing etc. In contrast to that, the 65816 feels more like a proper CPU, that can run OS. Pity there were bit too many compromises made for backward compatibility. I wonder how difficult it would have been to make the three registers general-purpose registers in the native mode, rather then keeping the separation between one poor accumulator and index registers. And I find it rather annoying constantly switching between 8 and 16-bit modes. Comparing that to my old 68000 experience, I think even at that time, when Commodore was working on Amiga, 65816 had to made impression like looking backwards rather than making the progress.
When RISC-V gained its popularity I played a little bit with it to learn someting more about the platform. In many aspects I found it quite comparable to ARM. There is some elegance in the assembly of both: the wide, 32-bit instructions give enough room to sqeeze all conditionals/branching directly in instructions - it feels almost like higher-level language. On the other hand these platforms are rather overwhelming. Multiple instruction sets, the huge number of registers, 64-bit words, it all quickly makes impression that human won't be able to compete here with compilers and that generated code will always be more optimal. I know - this thread is not about optimal code, but human-friendliness, but still - an overwheliming architecture is part of the experience, I think.
So, my conclusion is that human-friendly ASM must be rather limited to small-scale architectures. Dealing manually with a huge number of 64-bit registers makes us feel rather lost, even if we get in hand elegant instruction set. That probably means all modern RISCs are not for humans. X86 then, at least up to Pentium, felt like more human-oriented, with it CISCy approach, many dedicated instructions for specific domains (math, multimedia, etc), yet it never gained any love and it never felt so friendly. I wish I had spent more time with MIPS. In many aspects (again branching, comparisons) it felt quite natural and rather different than other ASMs I experienced.
My final conclusion is rather obvious: if the architecture wasn't designed having in mind that engineers will be implementing them directly, then it's hard to expect human-friendliness. PDP-11, which I never had a chance to deal with, was designed with that in mind, and indeed back then a huge amount of code for that platform was implemented directly in AMS. Same with hobby/home computers like our beloved 6502-based machines. As long as we, developers, can grasp the architecture end-to-end, feel that we control literally every step of the CPU, it makes sense. Switching into GHz+ world, mutlicores, etc makes the entire platform feel a little bit foreign or blackboxy. Perhaps my question from the title is rather wrong then - it's not about the instruction set, but something else...
Curios what are your thoughts.