"Obrigado" is the default expression. "Agradeço" is a tad more formal. They are used for the same thing, but they originally mean different things. The verb "agradecer" means "to thank" and the adjective "obrigado" means "obliged", as in "I'm obliged to you for the favor you have granted me". But of course, for Portuguese speakers, the expression lost its weight and we feel like we're simply saying "thanks".
Whenever I see a new word in Portuguese, I always try to link it to similar words in English (to help me remember). Perhaps 'to be grateful' is derived from the same root as 'agradecer'?
Anyway, I translated this as "I am grateful for the help", which Duolingo obligingly accepted ;-)
No, Carolind actually mentioned the exact English cognate: obliged. Often Portuguese has "d" in the place of Latin "t" and "r" in the place of Latin "l":
- (Latin) obligō/ob
tus ->(Portuguese) ob
- (Latin) obligō -> (Old French) obliger -> (English) to oblige