Let's first take a look at what we're used to seeing nowadays, mining in a pool, from a perspective of a miner.
The miner connects to the pool's stratum address, authorizes, starts receiving jobs and gets busy with trying to find solutions. In a sense, you can think of a pool being a company which owns a piece of land, which it divides into parts (jobs), where miners are trying to extract valuable resources from. The pool provides miners with a "minimum share difficulty", which in our analogy would be the measure of how valuable a piece the miner just "dug" is. If the peace reaches the minimum share difficulty, the miner then submits this share to the pool, stating that they found a share there and that they, indeed, are still working on the job.
The pool, by looking at how high the difficulty of submitted shares is, and how often the miner submits them, is able to determine at what speed the miner works (calculate the hashrate of the worker).
If a worker in the pool creates a share with difficulty higher than the current network difficulty, it means that the worker has found a block solution, which the pool then submits to the network, takes the fee for it and splits the reward between workers based on the payment scheme the pool's using, most common examples of which are explained in this article.
In reality, there are multiple pools all using the same "land" of possible nonces, and they're competing against each other in order to be the first to get the block solution.
So how does SOLO mining get into the picture? Effectively, each pool can be thought of as a solo miner. What they do with the reward doesn't really matter to us, they're still competing for the block against each other, and so do all the SOLO miners. When you mine solo, you get the whole reward for the block, however, it is much harder to achieve that. Effectively, at low hashrates mining solo becomes a lottery - the payment for the ticket is the time and power you spend, and the chances of getting a reward are extremely low. However, if you do get one, the rewards for it is much higher than the reward you get per submitted share.
In classic solo mining, the miner needs to have a node connected to the network in order to be able to create blocks, and not only find solutions for them. This is the method miners operate with before pools are created for coins, typically switching to pools in order to get stable in frequency and size rewards.
Some pools offer the ability to mine in solo mode without the need to have their own node. This way, you are still paying the pool the fee for it's service, but retain the reward without sharing it with other miners. Here are some of the pools which provide such services:
Use minerstat software and improve your mining operationSign up for free