It's my humble opinion that menubars are good. Any application with a menubar is infinitely better than any without. No exceptions.
Conventional Power
Menubars provide a conventional method for listing all the functionality of an application. They are the universal entry point for a new user to find and learn what an application is capable of. No user manual is required, just browse the menubar and you'll know what the application is capable of.
An organized menubar that follows known conventions helps new users quickly find the functions they're looking for even in entirely new applications. Where do you expect Undo, Redo, Cut, Copy, Paste, Paste Special to be found? Probably in the Edit menu. Where is Preferences... and Edit Keyboard Shortcuts...? This could be in File, Edit, or Options. How do I know which version of the application I'm using? Just check Help -> About. All functions listed in this paragraph are universal—every application will have them in one form or another—therefore, every application needs a menubar.


Applications that don't have a menubar always end up trying to reinvent the functions of the menubar in an inferior way, which is a constant reminder and proof that menubars are the ultimate menu paradigm. It doesn't get better than menubars.
Text vs. Icons
A common attempt at reimplementing the menubar in a way that is clearly worse than a menubar—and yet somehow the developer doesn't realize this—is to attempt to place MULTIPLE different buttons with icons that display a dropdown menu around the top area of the application.

To me what that says is that you want a menubar, but you think icons are better than text. You are wrong. A word is worth a thousand images. There is no icon in the entire universe that says "Delete" better than the letters "DEL." Not a trash can, not a recycle bin, certainly not an X button. You just want "delete."

For a well-made application, there are no additional costs in using text. Since if you use an icon, you are going to need a tooltip for the button so people know what that ambiguous collection of monochromatic pixels you put in there is even supposed to mean without clicking on it. That tooltip will need to be translated, so you just ended up with icon AND text when you could have just had only text and saved yourself some work.
To make matters worse, open source applications, specially those made with GTK, have a tendency of using generic icon names for their icons to enable theming, which means that you often end up with icons that have different semantics across applications, e.g. the left arrow icon meaning "undo" in editing applications but "go to previous" in address bars.
This is the opposite of what menubars enable. While with menubars your knowledge is transferrable across applications, with icons your knowledge only leads you to error.
Discoverability
Menubars' ability to allow users to discover new features can't be understated. Even seasoned users of an application can discover features they never dreamt of by browsing the menus on the menubar, which is a fairly common occurrence as users generally don't go through the effort of browsing through an application unless they encounter an issue with it—they'll simply use the application in a way that works for them and stick with what works.
For example, many video players have the ability to take screenshots of the video they are playing, or loop a small section of the video by setting start end end markers (sometimes called A-B markers). These are features that might be useful someday that you'll normally never need in your life. In video players that place the looping feature in menubars, such as MPC-BE, it's easily discoverable. I've never needed it, but upon browsing the menubar I quickly found it. Meanwhile, VLC, despite having this feature, hides as a button that only appears when "Advanced Mode" is enabled, ensuring users never discover it by accident.
Some application developers mistakenly believe that the VLC way is how the entire application should be. Every single function must be hidden in a panel that only appears when you press a button, which itself may be hidden in a dropdown somewhere completely unrelated. This simply creates a maze of functionality that nobody can ever find. More importantly, all you have done is recreate the menubar -> submenu system, except that instead of everything being in a single place that is cohesive in location on screen and organized, it's scattered around the screen.
Surely nobody expect users to just go around clicking on buttons to figure out what they do, right? Which means that for every random button scattered around, the user must hover and wait for a tooltip to explain what the button even does.
I've used computers for a very long time, and sometimes I click on a button, usually of a GNOME-style based app, expecting a dropdown menu to appear, and it just collapses the side pane, or vice-versa.
I've seen applications that had several dropdown menu buttons on a toolbar or headerbar. Three bars. Three dots. Other three bars. In the same bar. How am I supposed to know which one I should click to find the function I want?
Learnable: Turns Beginners into Experts
Computers are very complicated, and so it mastering how to use computer applications. There are few signs that someone is productive with computers, such as their typing speed. Another clear sign of a person's experience is their ability to recognize icons and to use keyboard shortcuts. Menubars teach both.
In a proper menubar, next to every menu item you'll find an icon for the menu item and the keyboard shortcut that triggers it. GUI development tools such as Qt facilitate creating menus like this by tying everything together from the start. In this toolkit, you have an "action," an action has a label, an icon, and a keyboard shortcut, and they can appear on menus and toolbars. This ensures that the keyboard shortcut displayed is always correct, and that the same icon that is shown in the menu is shown in the toolbar, which is equally important.
By having the icon next to the menu item, users can learn from the menu the icons of the toolbar. The icons are literally labelled by the menu item's text. It's impossible not to learn it. Learning these icons allow users to just press them on the toolbar instead of opening the menu, which is a step forward. And learning the keyboard shortcuts of your most usable actions greatly improves your productivity with any software.
A Sign of Quality
The menubar is the simplest way to measure the quality of an application. The quality of an application is proportional to the size of its menubar. The more menu items the application has, the more quality it is.
Adding more menu items to a menubar is trivial for a developer. Most menu items require trivial programming and yet they enable users to perform actions that would otherwise be impossible. In other words, menu items are a sign that the developers care about the users. The developer wants users to be able to do more things within their application. Each menu item tells a story. It's a function for someone, even if it's not a function for everybody.
Most people will never need to sort a playlist descending by length, but someone might want that. To implement an user interface well requires a bit of work. With menu items, be it in a menubar or context menu, it's trivial. It won't be as usable as having customizable and clickable column headers for the playlist, but users will be able to do what they want to do if they ever need to do it.
Similarly, most menu items are for functions that most people will never use, that are trivial to program, and that provide agency for the user over the data loaded in the application. You can tell PotPlayer is the best video player for Windows based solely on its absolutely ridiculous number of menu items. It's that simple.
Interestingly, it seems the reason why Microsoft decided to implement the ribbon was that Microsoft Office had so many functions the menubar and toolbar paradigm was no longer usable.
- MIX08: The Story of the Ribbon, Jensen Harris [https://www.youtube.com/watch?v=YLZgNHEEnSE] (accessed 2025-04-21)
Most applications don't have the complexity of Microsoft Office, however, so they don't have its special needs. The menubar is good enough.
Hand-Eye Coordination
A great thing about menubars is that they are explicit: they are displayed on the screen, constantly, which means anyone can see it, and anyone can aim at them. Being able to move the mouse cursor directly toward the menu you want without having to wait for a dropdown to appear is great, and it's an usability feature that shouldn't be ignored.
Some applications have instead a single button that opens a main menu. This main menu is hidden by default, as it's a dropdown, and it's vertical, as it's a dropdown, which makes navigating the menubar far more complicated.
For example, in PotPlayer you have items such as Playback -> Playlist -> Sort -> By Title. When Playback is an item in a dropdown menu, you end up with 4 different menus displayed on the screen. If Playback was instead an item in a menubar (alongside with File), that would be one menu fewer. That doesn't sound like a lot, but it is.

But What About Immersive Applications?
There are some applications out there that seek to provide an "immersive experience" by removing their menubars and other graphical user interface, presenting a window to the user that has nothing but a main pane. In these, the main menu is accessible as a context menu by right clicking on the main pane. Examples include BeeRef and JPEGView.
Even in these, I don't believe the removal of the menubar to be a good thing. After all, if there is one menu item that you can add to a menubar, that would be "View -> Hide Menubar." You can simply have a menu item to hide the interface. Many drawing applications, such as Krita, have an immersive mode that hides everything but the main pane with a keyboard shortcut, e.g. Tab.
Applications that don't have a menubar aren't better, because they are simply the same application WITH the menubar but WITHOUT the option to display it. Why would anyone think that an application with fewer options would be better than the more customizable alternative?