I use terry cloth (or a towel would work) on one side and cotton on the other, and I'll tell you why. My SIL asked me to make some for friends that were having babies so I made 3 sets, each flannel on one side and cotton on the other. Since they were the first ones I had made (I don't put an extra layer of fabric or batting between the layers), I asked my SIL to get input.
All 3 gals said the flannel was not very absorbent, when it got wet, the wet just sat there. I make mine in a bone shape, the narrow part lays on the shoulder, so slipping was not an issue.
I then made 3 more sets with cotton on one side and terry cloth on the other. The gals all responded saying that combination was perfect. So that's how I've made them since. I could probably also make them with terry and flannel instead of cotton.
Lots of people use flannel and it seems to work just fine. I just switched to terry because of the comments. If I use towels, I buy the cheap ones at Walmart for $1.99.