There are at least 4 entirely different things that various people call "flattening". Be sure you know which one you are aiming for. If someone has just asked you to flatten, demand to know what they mean! Otherwise you could waste a lot of time doing the wrong thing.
1. Replacing form fields with fixed, non-fillable, contents that look the same.
2. Removing layer markers, so the contents are the same but there are no layers. Very little point in this, but some people try to do it because doing a similar thing in Photoshop is very often wanted.
3. Replacing semitransparent areas with opaque equivalents (this is the Flattener in Acrobat Pro DC; it doesn't do anything else).
4. Replacing some or all text and vector content with a raster image.