I have a Canon Eos 650D. I want to buy a macro lens, both for macro and portrait.
Everybody tells me the Canon 100mm is better then Tamron. But Tamron has VC. Which lens is better? Which one do you prefer?
You can use online tools to compare both of these lenses as well as the very comparable Canon 100mm f/2.8 IS L USM lens.
Here is a comparison of the following three lenses at DxOMark:
As you can see based on that spec comparison, they are all very similar but the Canon 100mm L macro stands out from the crowd.
This is probably my favorite comparison of the two lenses that you mentioned, the VC Tamron and the Non-IS Canon at the-digital-picture.com. It is very obvious how much higher quality the Canon is at f/2.8. So yes you can use the Tamron with stabilization, but if the image even on a tripod is not as sharp, is that worth it to you? I would choose the sharpest lens then consider stabilization as a secondary thought, but that is just an opinion.
They will all should be generally sharp and excellent for both portraits at that focal length and macro work. Image stabilization is available in the more expensive versions of the lenses from both manufacturers, and I encourage you to read the following for advice on that topic:
Overall, the Canon EF 100mm f/2.8 USM Macro Lens is one of the sharpest and most economical choices found in the entire Canon lineup. If you absolutely need IS/VC then I would compare the Canon IS to the Tamron VC instead for a more fair comparison. If you don't absolutely need IS/VC for your uses, the Canon non IS is always an excellent choice.