Друг - надежный человек, отношения с которым прошли проверку временем, на него всегда можно положиться, с ним обычно очень много общих интересов.
Товарищ - просто человек, с которым ты можешь пообщаться на какую-то тему, понятную вам, этот человек не играет большой роли в твоей жизни, вас с ним связывает немногое.
Иван - мой лучший друг.
Мой товарищ пришел вовремя.
Таким образом, слова друг и товарищ обозначают немного разные оттенки человеческих отношений.