I've used arrays and base ten blocks to teach the distributive property. Personally, I felt like the base ten blocks confused my students, so I don't use them anymore. However, that could have been my fault, because that was one of the first times I had taught the distributive property, and I was a little unsure of it myself. I do like using arrays (with grid paper) to get students to find the partial product of each digit in the problem. (I could explain this much better with pictures

I used to hate teaching it, but my students usually like it-go figure.