Master and secondary controllers are part of the same Z-Wave network. They both participate in the same mesh and can communicate without a gateway with any of the devices in the mesh.
Bridging allows two Veras with two discrete Z-Wave networks to share information about devices and activities over the TCP/IP network. When it works, it allows you to view, manage, and control two disparate Z-Wave networks as a single virtual entity. Z-Wave devices in one Z-Wave network cannot communicate with devices in the other. However, the controllers can send commands from one network to the other by using the other Vera(Z-Wave controller) as a gateway. For example, scenes on Vera1 can activate devices on Vera2's Z-Wave network as Vera1 sends a command over the TCP/IP network to Vera2 who then sends the Z-Wave command to the target device.
It's a tough call, based on your description. But I suspect that you would have a more reliable setup if you chose to use two discrete Z-Wave networks, due to their geographic separation. IN such a case bridging is a valid confutation option, but it may not be necessary to bridge, unless you want one Vera to control everything. If you don't, it may be better to leave the two Veras and their networks as separate entities, since bridging can introduce some flakiness with its added complexity.