BTCustom verses Custom field mappings

I have a question about the differences between BTCustom001-BTCustom035 and Custom001-Custom099.
I know a number of "BTCustom" are used in the default override configurations but that's pretty much it.

Is there a reason I should use one over the over? or what's the history of having both, I presume custom was just created to facilitate larger environments but it would be good to get clarification.

Related but not sure how, I saw this KB which implies "Custom" may accept different data types to "BTCustom":