Heterogeneous refinement is essentially the same as 3D classification in Relion, except with cryoSPARC’s innovations (e.g. branch-and-bound) and differences in implementation details.
The number of particles per class is listed in the outputs as you noted. The classes are annotated as “_class_0.” The number of classes is determined by the number of reference volumes you add, as in Relion, these can be be copies of the same volume or separate references.
The number of particles for a class might vary slightly between different screens in cryoSPARC, because of the membership probability threshold. CryoSPARC uses “soft” classification internally, where every particle has some probability for membership in every class. By default the threshold is 90%. This is also why the particle count for classes from ab-initio might disagree slightly between the summary screen and the job result screen.
In your case, it does look like all the particles might have ended up together in one class, in which case the improvement in resolution doesn’t make much sense.
What were your starting references? Can you check all the box sizes? Naturally the refinement will be limited by the Nyquist frequency given the box sized used in refinement. The default for heterogeneous refinement 128, while for homogeneous refinement it’s the size of the particles.