Enumerable disjoint subsets whose union is equal to the union of the sets
This answer assumes that enumerable means recursively enumerable.

Here is an enumerator for $C$:


Run enumerators for $A,B$ in parallel.
Whenever the enumerator for $A$ outputs a word, check whether the word has already been enumerated by the enumerator for $B$; if it hasn't, output it and continue.


The enumerator for $D$ is defined symmetrically.