As Paul pointed out if using a shield with an opto-isolator then:
If so, there is a catch - you do not connect the grounds together!
This in general proves that not every board and shield should have common ground with the Arduino. Although in general most do require a common ground. It depends entirely on the circuit that is on the shield and what you are trying to do.
So I can give you no concrete answer other than usually a common ground is required (and the reason for that is pretty much basic electronics, go watch some YouTube videos about it and you will start to understand why ground is necessary, but basically it provides a reference for all other voltages. It does more than that too but that's a good basic explanation I think.)
But the real answer is for any shield you buy and use you need to read and analyze the datasheet/schematic and understand what is happening and how to use it.
As far as connecting two shields... it depends. If they are shields that stack into the existing headers on the Arduino all the leg work is done for you, it's just plug and play. If it's relay shield you are talking about, then basically once you understand how one works you can take that same method and apply it to additional relay boards. Not infinite of course since there are limitations to the Arduino hardware.
And from the pdf you posted it appears the relay card you are using has no opto-isolators, so in this case you do need a common ground between Arduino and relay shield.
I am assuming you know how to connect NO, NC, and COM. So I will not cover those pins. If you don't know how NC, NO, and COM work, I would suggest watching again some YouTube vids to demonstrate that, because you will learn just as much from that and probably better explained then I could explain here.
V+ is the voltage to activate your relay coil, so that depends entirely on the relay, but usually 5V is the magic number for most relay shields. But make sure to get that 5V from the power rail not an I/O pin since usually the relay coil take more current than a single pin can provide.
You only need to connect one ground pin to Arduino ground, as all grounds on the relay shield should be electrically connected.
To be honest I'm not sure what dry contact input is (I'm sure someone with more knowledge than me can answer that), but from the schematic it appears to be a direct connection to the relay coil which may or may not be useful in certain cases. But in this case you are using a logic level device (Arduino) so you should connect I/O pin to logic input and set output pin HIGH to enable Relay.