1. I thought that in tap mode, openvpn server has to run on the same subnet as it local (eth0) interface. Please let me know if my understanding is correct.
nope this is not correct; 'tap' mode without bridging is nearly the same as 'tun' mode + topology subnet
2. If the machine on which the openvpn server and client are running are on 2 different networks, in the tap mode would'nt we specify the open client ip address to be in the same subnet as that of the openvpn server in the server configuration file? In this case I am not clear how we join 2 different networks when both the openvpn server and client are running in the same subnet?
the client is assigned an IP by the server using the statement
server 10.8.0.0 255.255.255.0
(just like in 'tun' mode).
Transparently joining two networks is trickier and requires bridging.