It’s a mathematical abstraction a lot of people feel they need to understand (‘cause of its connection to some programming language theory stuff, and practical use within Haskell notably), so there are a million tutorials where someone is purportedly, finally, going to make the concept clear.
I think somewhere I actually did find one that made it clear. But I don't remember anything about it at all.
I just vaguely remember them as something super abstract, that you can work through with about the same effort as a sudoku puzzle, but you have to go actually learn Haskell to understand why you'd want one.
Then they say something about function composition, but it seems like have to already be a functional expert to know why you would care about composing functions in a consistent way instead of just calling them from a new function.