One object with multiple elements ,different colours to elements inside object
Assuming Blender Render.

In [Edit] mode  you can place the mouse over a connected vertex group and 

press l the second letter of  B(l)ender to increase your selection .

Then in the materials panel pick one material and click
[assign] button.



Particles can be created with different colors in groups or duplicated faces or material nodes so it may be easier to let the creation of particles assign colors for you.