The history is this : The word used to be simply 'oft', and then at some point in time people started adding the 'en', but kept the 't' sound. Then at a later date, some experts decided it ought to be pronounced with a silent 't', the same as 'fasten', even though there was no good reason to drop the 't'.
Today there are probably a couple of hundred million native English speakers in the world who pronounce the 't' in often, and a couple of hundred million who don't pronounce it. Everyone thinks that their pronunciation is right. So it really doesn't matter.