A long time ago KiCad choose for wxWidgets as the GUI library. Maybe that was not the best choice, but I don't know what alternatives there were 30 years ago. Several improvements are planned (such as editable and dockable toolbars), but are currently waiting for them to be implemented in wxWidgets first.
Well, it's the lazy way of building a cross-platform product. As you suggest, I don't think there were many alternatives available at the time. Personally I dislike using stuff like wxWidgets because the resultant UI doesn't observe the Windows norms when running on Windows, doesn't observe the Linux norms when running on Linux, and so on. It brings its own set of norms, which aren't entirely consistent with any particular OS.
And although functionality definitely is the main goal, "user experience" is also important. I don't really see what problems you have, but I have grown up with EDA suites in the '90-ies myself, and back then the interaction between the schematic and PCB editors in other programs was also similar to how KiCad works now.
It depends on how you define "problem", but in any case I didn't say I had a problem, I said I dislike using KiCAD, even though I will soon be pretty competent in it (I'm working my way through Peter Dalmaris's course, which I can recommend as being very thorough).
https://techexplorations.comUp to around 2015 KiCad was a relatively simple "hobby level" program, and after around 2017 the development speed started increasing significantly. (There was also a lot of "invisible" refactoring done "under the hood" around that era). A part of the "clunkyness" of KiCad is caused by it's open source nature. Developers are pretty much free to work on any feature they like, but it has to fit in the goals and overall direction of the KiCad project. New functions are sometimes added in a seemingly illogical order, but refactoring and better organization of menu's also takes place. It is a gradual and incremental process though.
I think you've nailed it perfectly. It was a hobbyist program which got changed into a professional level product. In my view this is a poor way to develop an application, because it leads to compromises. Great software needs a singular "vision", and that vision needs to be ever present - and dominant - throughout the development of the product. Open source rarely enjoys that benefit, so hodge-podging new features and functionality is almost always in the context of a loose association of interested volunteers, rather than under the strict direction of a corporate vision (with profit to be made from it). I haven't yet found a single open source program that I prefer to use over the best of the commercial products. By way of example, people tell me that Audacity is a fantastic example of a great open source program. I think "You must be kidding!". The UI is absolutely dreadful. Try something like Adobe Audition, and then tell me Audacity is great. It surely isn't. The functionality is great, but the UI? Nope.
My point being that KiCAD will probably never shake off its amateur origins and it's open source nature. It will bristle with features (software engineers are great at implementing features) but its UI will forever be old-fashioned, with poor discoverability and more complexity than ideal (software engineers are rubbish at designing UIs). Both of these sweeping statements are generalisations and said tongue-in-cheek! 😀