Java Edition:Block Duplication Methods
Specific Block Duplication Methods
Gravity blocks
From Infdev 20100618 to beta 1.9 pre-release 5, if you place a gravity block and go into the menu when it becomes an entity, the block will appear in two places: where it was placed (Floating), and where it would fall.
Update Suppression
From Beta 1.6 Test Build 3 to 25w42a (present) if you place a block next to the BUD line of an update suppressor, the block will duplicate. It will appear both in your inventory and where you placed it, due to the suppression of the block update skipping the decrement of the item stack used to place the block.
It will work with any block. It also works with shulkers and blocks with NBT data, however the NBT data will be erased when you place the block. The shulker in your inventory will still have any items you put in it, but the shulker you put next to the suppressor will not have any items in it.
Pushable Blocks
In Beta 1.7.2 a setup with pistons and certain timings could duplicate any block that can be pushed by a piston. This video has a tutorial on how to use this method.
Chunk Savestating
Chunk Savestating allows for any chunk to be reloaded to a previous state, making every block renewable.
Chunk Regeneration
Chunk Regeneration allows for any naturally occurring block (or block found in a structure's chest) to be renewable by resetting it to what would be generated upon initial world generation.