In the long run, solo mining should be more profitable... Especially if you have enough hashrate.
The difference: when you solo mine, you should run a full node, when you find a block, you get the full reward, if you find nothing, you get nothing. If you have little hashrate, there is a chance you'll never find a block, so you'll never get any coins (it's more of a lotto mining setup in this case). With loads of hashrate, you'll probably find a block from time to time.
If you pool mine, you usually pay between 0.5 and 1% poolfee, but you don't have to worry about running a node, and the block reward gets split between all pool miners, so you usually get a steady income of coins. A second difference is that some pools keep the miner fees for themselfs, while others also share the fees with their users.