Egg hunting is used when there is not enough space in the memory to place our shellcode consecutively. Using this technique, we prefix a unique tag with our shellcode and then the egg hunter will basically search for that tag in the memory and execute the shellcode. The egg hunter contains a set of programming instructions; it is not much different from shellcode. There are various egg hunters available. You can learn more about them and how they work in the following paper by skape:
http://www.hick.org/code/skape/papers/egghunt-shellcode.pdf.