Принципиальной разницы между понятиями нет. Обязанность, это тот же долг, только в более широком значении. Часто их принимают за синонимы. И всё же, некоторые отличия у них имеются.
Человек, как существо социальное, должен много кому и почему. Родителям, за то, что появился на свет. Своему народу и стране, в которой живёт, пользуясь благами, предоставляемыми цивилизованным обществом. Это как тот же денежный долг, который однажды всё же придётся вернуть, возместить ранее взятое. То есть, должен, можно назвать понятием безусловным, тем, что непременно должно совершиться.
Обязанности же, не предполагают неизбежности. Их можно выполнять регулярно, руководствуясь совестью. А можно разорвать рабочие или семейные отношения, положив конец взятым обязательствам. Обязанность возлагается, подлежит выполнению, но всё же, является значением условным.