В чем отличие?
Надо — больше применяется в контексте действия (принести, сделать, купить), также считается более разговорным вариантом.
Нужно — коррелирует со словами «нуждаться», «нужда» и выражает потребность в чем-либо.
Грамотная речь | Лингвистика 📝