In gnu evolution (when it hasn't randomly decided to render the entire message window as all black), you can navigate messages with [ and ] to jump to the latest or last unread message, then depending on whether it decides to actually work in marking the message read as soon as you view it, you can press Ctrl + K to force the message to toggle its read status.
In Outlook, because I have so many folders due to sieve rules, I scroll to the bottom of my account where there is an unread emails view that I scroll through and mark the ones read that need to be, then right click the whole folder and hit mark all as read.
Then I just have to wait for 15 minutes as Outlook figures out how to synchronize all that!
K-9 at least on the 6.x version that I remain on so I don't get dragged into Thunderbird Mobile and it's nasty new UI, the only way to set something to appear in the unified inbox is to go folder by agonizing folder and add it, not something I want to spend the time to do, so I end up scrolling through folders and looking at messages manually.