Yes, a server can respond to multiple requests and stream at the same time, whether it's multiple requests from one player, or simultaneous requests from multiple players, or multiple requests from multiple players! Of course, the hardware needs to be powerful enough. I remember this appears as a FAQ I think on Synology's site - I think the conclusion was that an average Synology NAS (which is not exactly a powerful machine in terms of PCs) is able to handle four simultaneous DLNA streams.
You are probably best having a look through the JRiver home page, wiki and downloading the software to have a play around with it - a lot of the zoning issues would become obvious I think once you can see it on the screen.
There are the concepts of Playing From and Playing To. Playing From is the library of media files and Playing To is what's playing them. You can only connect to (play from) one library at a time, but this library can be a local library (you can set up multiple local libraries and switch between them), a remote library on another JRiver server, or a library from a DLNA server. For sharing libraries between JRiver installations you can either do a remote connect (one installation becomes a library server and the other is a library client) or you can export a master libary and import it as a local library into another installation.
Playing To are Zones. Each Zone has its own playlist. In the Playing Now screen, you can select one zone at a time to control, or you can choose an Overview screen where all zones are shown at the same time in individual colums and their current playlists are listed, together with an indication of what item is playing now in each zone.
Note that the term Playlist is ambiguous. In this case, and how I assume you understand it, it is an on-the-fly list of items that you have queued up for playing, like a jukebox. So a Playlist is unique to a Zone and is built up during the course of a session. JRiver will create a playlist for each zone that you are controlling. These playlists are not part of the library and they only exist "logically" like a session variable. However, in JRiver there are also Saved Playlists, which appear in your library as though they were just another album. You create these either by dragging and dropping files to create a static list, or they can be dynamic where you construct a query/filter, and JRiver will dynamically build a list of files that fulfil that criteria. These Saved Playlists are part of the library therefore they can be shared amongst installations as above and can be selected for playing to any zone independently or at the same time.
For example, suppose you have two zones (DMRs) and one installation of JRiver. Your question was "It also seems that you stated that JRiver could actually stream two different playlists from the NAS media server to two different DMRs... If that indeed works, how do you do that in JRiver?". Do you mean NAS media server or NAS file server? NAS media server implies that it's a DLNA server, therefore you would do a remote connect from JRiver to the NAS DLNA library. If you're just using it as a file server, then it's JRiver's local library that you would use. The NAS just looks like a normal disk drive to JRiver. If you regard a Playlist as being the list of items that you build up on-the-fly, then you will connect to one zone first, build up your playlist for that and start it playing, then switch to the other zone and compile that playlist. Both zones are independent and have their own playlists. If, however, you mean Saved Playlists then these are part of the library. So again, you connect to one zone first, select a playlist from the library and start playing it. Then switch to the other zone, select another playlist from that library and start playing that.
JRemote is iOS only. It came about because Gizmo is Android and there was no JRiver-produced equivalent for iOS. It has a thread of its own in the Third Party forum. Yes, you are correct, my PC is upstairs in the spare room and I am downstairs on the couch with my TV and hi-fi! That's why I use JRemote to control JRiver.
Theater View is JRiver's "10 foot interface", for use on a TV with a remote control, like Windows Media Center. Standard View is the typical PC-interface, like Windows Media Player etc. Dedicated apps, like Gizmo & JRemote etc are obviously on touch devices and work perfectly, but Theater View is designed for an IR remote control with cursor keys and OK buttons and dragging scroll bars. It works somewhat with a touch monitor, I tried it last weekend, but a bit frustrating when compared to a native tablet app. And the standard skins are nowhere near as attractive as JRemote, although it has more eye-candy such as backdrops, cover flow, menu animations etc.
The JRiver licensing model is unusual. Once you have bought JRiver, it is a one-off payment and you get free updates to the software for up to a year, there are new builds coming out at least once a week. You can see release notes at the sticky at the top of the main software forum
http://yabb.jriver.com/interact/index.php?board=27.0. You can install it on as many PCs as is "reasonable". In other words, for an average home use with, say, two or three PCs around the house, you don't need to buy more licences. About once a year, you have to renew the licence (at a reduced fee from a new licence) if you want to continue receiving updates.
With regard to the audio processing, I don't think I can possibly explain it, it mostly goes over my head! If you have a decent DAC, of course this is going to walk all over an average PC sound card, however you could also use JRiver as a sort of "preamp". There are many threads in these forums about audio processing and the DSP facilities, but again you might as well just download the software and have a look. There have been links to various audiophile magazines and articles which have continually touted JRiver as the software to go for if you're going to do PC-based music. There is a dedicated board here for discussion about audio output and processing, DACs etc.
I don't use Shuffle very much so I can't really explain how it works and how random it really is. JRemote has Shuffle too, but I don't know if it is simply exposing JRiver's internal shuffle or whether it uses its own algorithm.