I don't understand why I'd want to use tmux locally. I'm a huge believer in tmux on remote machines though. Why would I want to use it on my local laptop?
In addition to the obvious multiplexing/windowing/paning, I find it great for creating named "work sessions". I have a short script that creates or attaches (with zsh autocompletion in the case of attaching) tmux sessions while creating a standardized filesystem tree that I use for units of "work", checking out things I need, etc.
This allows me to basically just type at any point `work foobar` and I'll either have a clean slate to start working on foobar, or I will be dropped into an existing tmux session 'foobar' that is exactly where I left off last time. Same 'tail -f'/'watch'es, same Vim sessions, same everything.
Besides regular units of work I usually keep a tmux session around just for database connections or the like, and another for messing around with environment stuff (dotfiles, ~/bin/, etc).
Most of this organization is stuff I used to do with virtual desktops, but I find tmux is wildly better suited for it.
Assuming you spend a lot of time in terminals, you can use it to group your tasks. For example I have tmux sessions for my bachelor's thesis which contains two windows, either of which contains two split panes. The left pane is for vim (which are split further) and the right pane are for ghci and terminal. If I change from writing the thesis to for example doing work I can just change the tmux session. The layout and content are just like I left them.
Say I am working on a rails project. I need vim open with root; I need rails server, console, dbconsole; I need one window at project root for misc task; and I prefer not to navigate with the mouse to different tabs. Personally, I vastly prefer tmux terminal multiplexing over terminal tabs.
Also, it doesn't happen frequently, but I have closed terminals which I didn't mean to. tmux/screen means that causes only minor inconvenience, compared to closing the terminal, opening it again, opening all tabs, dealing with swap files, re-running servers, dbconsoles etc.
I would recommend a primarily tmux-based workflow unless you use a number of graphical programs that benefit greatly from the tiling paradigm.
I used to use Xmonad with tmux (and still do sometimes). I primarily use Unity with tmux now. I came to the realization that tmux had nearly nullified my need for a tiling window manager after I switched from gVim to terminal vim and noticing how much easier it made my workflow. My "ah ha" moment was the discovery of the distinction between sessions, windows, and panes and how each could interact with (or sometimes transform into) the each other.
I'm a xmonad user and I use tmux. I agree that they both provide similar benefits, but the killer benefit for tmux is the persistence. I can have n sessions open and it's still easy to switch between them. Just disconnect the old one and attach to the new one. With xmonad you would either need to have many topic spaces (and recompile config when you want new one) or close the old ones
This allows me to basically just type at any point `work foobar` and I'll either have a clean slate to start working on foobar, or I will be dropped into an existing tmux session 'foobar' that is exactly where I left off last time. Same 'tail -f'/'watch'es, same Vim sessions, same everything.
Besides regular units of work I usually keep a tmux session around just for database connections or the like, and another for messing around with environment stuff (dotfiles, ~/bin/, etc).
Most of this organization is stuff I used to do with virtual desktops, but I find tmux is wildly better suited for it.