В чем разница?
Давайте разберемся со смыслом этих глаголов, для того, чтобы решить раз и навсегда, как правильно – «надеть» или «одеть».
Все очень просто: мы надеваем что-то, а одеваем кого-то. Таким образом, для того чтобы убедиться в правильном употреблении глагола, нам надо проверить, к одушевленному или неодушевленному существительному он относится – и все сразу встанет на свои места.
Например, шапку (что?) мы надеваем. А вот ребенка (кого?) мы одеваем.
Давайте еще раз убедимся в разном значении слов «надеть» и «одеть», подобрав к ним синонимы. Синонимами «надеть» являются слова «нацепить», «натянуть». Синонимами «одеть» можно считать слова «облачить», «экипировать».
Таким образом, принципы употребления этих слов сразу становятся понятны – и даже не надо лезть в лексические дебри. Вот по этому правилу, всё понятно)