What is the difference between 赞成 and 赞同?
Both 赞成 and 赞同 mean: 'approve / support/ agree'

But there's a subtle difference:

[赞同] = [赞成(agree/support) + 同意(agree/have the same idea)] * Therefore, 赞同 has the added meaning of 'be convinced'


When you 赞成 (approve / support) an idea, you may or may not be totally convinced. For example, you can vote 赞成 on an issue because most people in your group have voted 赞成 already. 
When you say you 赞同 an idea, that indicates you have been convinced (to have the same idea as the other's). 
you can 'reluctantly agree' (勉强赞成); you cannot 'reluctantly agree and be convinced' (勉强赞同)
There can be 投票赞成 (vote to support) ; There can't be 投票赞同 (vote to support and agree)