I'll second what Hook said, and add a bit. Often, some type of software issue will develop that won't immediately cause an issue but, when you update the OS, it causes the issue to become a real problem. Also, sometimes the update itself will fail to "clean something up" properly, which is why many experts recommend clearing the cache partition after an install -- it cleans out the temporary files leftover from the old OS and from the update, which can sometimes cause an issue. Or some apps occasionally don't "realize" the OS updated, so it doesn't make the changes needed to work correctly with the new OS -- the programming is there for it to work properly but it isn't recognizing the OS updated correctly (again, clearing the cache often fixes this). This is also why Hook mentioned doing a factory reset. This clears out all the old apps, the old settings, all the things that typically can cause issues with a software upgrade.
From what I've seen (though I could have missed something), the issues people have with Marshmallow are the type of things mentioned above, they are typically fixed by either clearing the cache or doing a factory reset. Marshmallow itself seems to be quite stable and an improvement over previous versions of Lollipop Android.