Once you have a VPN connection established between the two locations you’ll want to setup a two way transitive trust between the two domain forests. In order to do this you’ll need to configure your domain controllers to use both the local domains servers for DNS as well as the remote domains servers for DNS. That or configure DNS hints on your DNS servers to tell the local domain on what IPs to find the DNS servers for the remote domain.
Once the forests are trusted you’ll probably want to put a domain controller for each domain in the other site so that if the link goes down domain information is available.
At this point technically nothing else needs to be done. Users from each domain can access resources in both domains. If you want to move to a single domain you can use the domain migration assistant to migrate users from one domain to the other. Eventually you’ll be able to completely remove the second domain from the forest.
This is not an easy or simple task. It should be planned out very carefully, possibly with the assistance of a consultant who specializes in this sort of stuff.