What's the easiest method for migrating content from Drupal 7 to another Drupal 7? I have two drupal 7 sites and one of them has about 21 content types that does not exists in the other drupal 7 site. It's not a data merge so it's more of a data copy. I know there is the migrate module, but that seems a bit overkill for something like this as I am not merging data into an existing content type. It should just create a new content type on the new site and import all the fresh datas in. 

What's the best approach or modules that should be used in this scenario?

I have never used migrate module before, so I'm assuming it's pretty complex as it can deal with many types of data. I remember there was a module which let you copy content from one site into the other.

The only complexity here is that these content types have node references and entity references associated to them. What issues might arise from that?
You should use the Features module to export the configuration for your content types (and any related things - taxonomies and the like).

To move content between the sites, I'd recommend looking into the Deploy module, which will allow you to "push" content from one site to another. It requires some configuration to get it all set up, but it works really well, particularly with nodes that have dependencies on other entities (via entity reference or taxonomy term reference or things like that).

If you want to use Migrate (which is probably not a bad idea, depending on your data). You could also look into the migrate_d2d module, which has a UI that let's you just point at another Drupal site, and then press "Go" and it'll pull in all your content.

tl;dr: There's lot of ways to do it, but the "best" way depends on the data in your sites.