A particle-counting immunoassay system for ultrasensitive analysis of proteins in a capillary environment has been developed. The assay is based on the agglutination of antibody-coated particles in the presence of an antigen (usually a protein). The particles were electrophoretically migrated in a 20-microns-i.d. capillary past a detection window where a laser beam irradiates continuously. The light scattering events generated by the agglutinated particles were counted while those produced by unreacted particles were electronically rejected. Glucose-6-phosphate dehydrogenase (G6PDH) was chosen as a test compound for the off-column as well as for the on-column versions of this method. A limit of detection of 620 molecules of G6PDH (1 zmol) was found in the on-column assay. The standard deviation between runs was approximately 6%, which is comparable to that of standard immunoassay methods. The application to the determination of G6PDH levels in individual human erythrocytes is presented. A 14-fold cell-to-cell variation was found which can be explained by the age distribution in the red blood cells.