For GUI file managers, I have to say you can't get better than Dolphin. It has an integrated shell for the current directory, and you can split the view. It can also directly open ssh and SFTP URLs. For local things the combination of Dolphin and it's shell is unbeatable.
Better yet! (one-line) shell prompt is always available and has some nifty integrations via <Ctrl+X>. For example, one has a bunch of files visually tagged (selected) on current panel, and wants to tar them up as "/tmp/foo.tgz". Well...
tar czf /tmp/foo.tgz <Ctrl+X><T>> ..a “Ctrl + dot” keyboard shortcut for opening the current directory in the terminal
https://9to5linux.com/gnome-49-brescia-desktop-environment-o...
Because that's what I miss most in my shell.
I know many people think these things don't matter, because you can do everything with MC (and more), but I disagree. In this case, every fraction of a second matters. In the setup I described above, selecting all files in the current directory and moving them to the directory in the other pane is: one flick of the right hand (roll over + and Enter on the numpad), F6 with the left hand followed by another Enter immediately with the right hand. Now try to do that using the + that is on your = key and tell me it's the same thing.
For some reason, the technical term for these is Orthodox File Manager, which I've always thought was an obscure cultural in-joke from the countries where these were most popular --- Eastern Europe and the former USSR.
This origin is elaborated at length here: https://softpanorama.org/Articles/introduction_to_orthodox_f...
Today, the DOS Think is far less prevalent.
Midnight Commander's screenshots would have looked a little off to OFM users with DOS Think. Today, it's the original MS/PC/DR-DOS tools that will appear odd to novices. They did things like have a narrow 8.3 filename column, omit the dots, use graphics in the filename for system files, use glyphs that one could only obtain through poking C0-range codes into video RAM, change UI elements as one pressed and released the Alt key, and so forth.
When GTK+ was released in the late 90s, combining my love of C programming with a newfound home in Linux and GTK+'s ability to make complicated graphical interfaces resulted in a dual-pane file manager. It was a great project.
https://lists.debian.org/msgid-search/20191228133344.GA4943@...
What I never got was why this style of TUI (MS edit.com, qbasic, etc) isn't really carried through in modern tradition? I really enjoyed these when when I was younger... yet even textual or ratatui apps don't really bring this interface to the terminal. (Or why screen-coordinate-based terminals aren't the norm to base TUI apps upon... this aspect just seems "obvious" but in this aspect modern terminal emulates seem lightyears behind MS-DOS, of all things).
Perhaps the rewrite of edit [1] will spawn a ressurgence of this TUI style?
[1] https://devblogs.microsoft.com/commandline/edit-is-now-open-...
It now even supports true keyboard reporting (through Kitty TTY protocol on compatible terminals) for SSH connections.
For no good reason, here's a screenshot of both of them running side by side on an iPad, which is a thing you can apparently do these days:
https://pbs.twimg.com/media/GYRYTq6WUAAt_1t?format=jpg&name=...
But somehow the reality of how I - and I think most people - use computers today is very different. I don't find myself navigating a shallow directory hierarchy and making file operations too often. A part of it is that all the stuff is in the cloud or at least connected to applications (eg: I am more likely to navigate my coding projects from an IDE than from Shell/MC)
And when I administer eg my home linux system, it seems more likely that I jump to a random far-away directory or edit a specific file, rather than navigating the filesystem MC stye.
I am curious how people are using computers today that MC-like interface is still most suitable.
Pleasantly surprised to see this topping HN today, and even more than the project and its website are still maintained in 2025.
It was originally written by Miguel de Icaza who became a semi-famous for his work on Mono and others.
For people who like the power of Emacs dired, there used to be Sunrise Commander but last I looked it wasn't so actively maintained and had some bugs, so I've sadly gone back to regular dired.
Nowadays I almost don't use Mc (except for file manipulation) because the Linux version has a serious weak point - it blocks the most important keystroke in shell: Tab. It is of course traditionally reserved for panel switching but this role could be deactivated when instead a single command line zone MC would allow to have a multi-line (in NC it was 3 or 4 line) zone for the shell scrolled display. This way it would be possible to have the full-size panel display (with the Tab switching panes) and one keystroke away reduced-size panels with full functionality of the shell tab key in the alternative panel mode... Another disadvantage is the complicated way of changing settings (especially the colors and file attributes display format) in practice forcing trial and error mode... True, it's not needed often but spending hours on it is rather deterrent.
One of the most overlooked features is a custom user menu[1]. It allows greatly expanding MC's capabilities with custom actions and integrate it into specific workflows. No plugins or DSLs, just a `sh` calling whatever you like.
For example, I have a couple keybinds for transferring selected files/directories over rsync while browsing the remote directory over sftp. You can easily adapt it to do the same for directories mounted remotely with sshfs/rclone mount.
Another action that I like to add (this one I actually use in Double Commander on my GUI workstation) is to automatically convert transferred files on the fly, like compress media with ffmpeg (WAV to FLAC, * to OPUS, etc).
[1]: https://source.midnight-commander.org/man/mc.html#Edit_Menu_...
Go on, ask me how I know ...
I've not had much cause to use it since then though.
In case you do prefer GUIs, consider DoubleCommander.
I've been working on "F2 Commander" on and off for a while now. At first, I wanted a TUI to view the contents of cloud storage buckets (GCS, S3, etc.), but it quickly evolved into an orthodox file manager. The funny thing is, the first version was in Common Lisp, but then I discovered Textual and was instantly sold on it - it's really fun to work with. The app scratches my itch, and although most of the time I myself prefer just using the regular command line, I open it up when I need to quickly navigate or move some files in a complex directory tree.
Still use mc in 2025 :-)
Back in the mists of time when dinosaurs roamed the earth and I developed DataEase applications under MS-DOS there was a thing called "Pathminder" [1] which was a very useful tool. Moving to Linux and finding Midnight Commander felt like coming home...
However I rarely use them on a graphical environment like windows where I can open arbitrary explorer windows and arrange them as I see like. I guess it depends on what people have experience on...
If you wonder how to quit (if started from a terminal):
It's `ESC 0`. Or "exit" like from a shell. Took me some time I have to admit (q, ctrl-c, ctrl-q, F10, ESC all did not work).
I’ve been trying to get used to ranger since I’m learning vim anyway
I use it for SCP and S3 file management too (first mounting the folder using sshfs or goofys).
Somehow during my 30+ years *nix career I never truly and actually used mc. Seems like moving files around in shell is good enough.