Indexing particles can allow multiple particles to be drawn in a single draw call. Since D3D9 (which XNA is derived from) has no quad primitive type, indexing is an efficient way of concatenating multiple strips or fans. It doesn't require degenerate vertices, indices are smaller than vertices, and thousands of particles can be handled in a single draw call which greatly enhances performance.
Take these two strips for example:
They don't share vertices, and without indexing you would need to make a separate draw call per strip. Now multiply that by hundreds or thousands, and you'll get so much draw call overhead that your performance will really suffer.
However, if you add an index buffer you just need a single draw call to draw both of them. Hundreds of particles? Single draw call. Thousands? Likewise. So you get to avoid the draw call overhead of an unindexed particle system.
Another reason is that instancing is sometimes used as an efficient way of pushing vertex data to the GPU for particles. Using instancing it's possible to draw billboarded particles using only one vertex per particle, rather than the usual four, so this quarters the memory overhead.
Now, and again with D3D9 class APIs, instancing is only supported for indexed drawing. So if you want to use instancing you have no choice - you must index.
(Of course other solutions - such as point sprites and geometry shaders - are also possible for particles, but since the question was about indexing I'm focussed on answers that provide the rationale for that.)