If the chain stretches (which they all do) the roller between links no longer sits neatly between the teeth on the sprocket, instead the roller starts to catch on the top of the tooth before it settles into the valley between teeth. This is why you get sharks fins, burrs etc. Tis also why changing your chain regularly extends the life of the sprocketts.
When the chain rings are badly worn, or you put a new unstretched chain onto worn chain rings the chain catches instead of smoothly releasing.
Burs also occur due to physical impact on the chainrings.
Buy a chain checker, I'd recommend the Park Tools one, and then change your chain at 0.75% wear, works out cheaper in the long run than constantly replacing chain rings and cassette.