These three polymers are extremely important for different reasons.
Starch and glycogen are both used as energy stores, the former being in plants and the latter in animals. Both use `alpha(1->4)` glycosidic bonds for polymerization and `alpha(1->6)` bonds at branch points. If you consider that many animals can eat plants, it should not come as a surprise that many animals, especially humans, have enzymes that digest starch called amylases. Thus, one final similarity is that animals can consume both types of molecule and make use of them.
There are two main differences between glycogen and starch. Glycogen is a single type of molecule with branch points every 8-12 glucose residues. Starch, on the other hand, is composed of two components: amylose and amylopectin. Amylose is generally nonbranching, and amylopectin branches but not as often as glycogen. Starch is also generally much larger than glycogen, with the former being visible through microscopy!
Cellulose is a whole other type of molecule. It is generally a structural molecule in plants, as opposed to being a means of energy storage. It has a different form of linkage called `beta(1->4)` that cannot be hydrolyzed by many animals, including humans. Cellulose does not branch, similar to the very-rarely-branching amylose component of starch. In fact, it's closest association to either starch or glycogen are that it is found in plants (like starch) and is composed of glucose molecules (like both).