Natural color polymorphisms are widespread across animal species and usually have a simple genetic basis. This makes them an ideal system to study the evolutionary mechanisms responsible for maintaining biodiversity. In some populations of the intertidal snail Littorina fabalis, variation in shell color has remained stable for years, but the mechanisms responsible are unknown. Previous studies suggest that this stability could be caused by frequency-dependent sexual selection, but this hypothesis has not been tested. We analyzed shell color polymorphism in mating pairs and surrounding unmated individuals in two different populations of L. fabalis to estimate sexual fitness for color, as well as assortative mating. The estimated effective population size from neutral markers allowed us to disregard genetic drift as the main source of color frequency changes across generations. Shell color frequency was significantly correlated with sexual fitness showing a pattern of negative frequency dependent selection with high disassortative mating for color. The results suggested a contribution of male mate choice to maintain the polymorphism. Finally, the implementation of a multi-model inference approach based on information theory allowed us to test for the relative contribution of mate choice and mate competition to explain the maintenance of color polymorphism in this snail species.