Fluidsynth vs. TiMidity 2.13 -- why does the former play beautiful cymbals and the latter play trashy ones?

Timidity++ comes with some questionable default settings that essentially ignore the effects specified by the soundfont and midi source in favour of global defaults.

Though I have no insight into why the developers have chosen to do that, I can speculate that it is because it's a lot easier to find awful midi files made by people who don't understand midi or music very well, or cobbled together soundfonts or patchsets that make perfect midi sound like a high-school band practising for the first time.

Try the following settings in your timidity.cfg, they tell timidity to respect the wishes of the creators of the soundfont and midi source.

# Enable all midi effects
opt -Ewpvsetoz

# Don't cut sustain to save CPU 
opt --no-fast-decay

# Pan quickly, even if it sounds bad
opt --fast-panning

# Set chorus and reverb by song & soundfont
opt EFreverb=1
opt EFchorus=1

# Never kill voices to save CPU
opt -k0

# Sustain fades after three seconds (3000ms)
opt -m3000

You may feel timidity sounds worse with these settings, if that's the case it probably means you're using a crappy soundfont. The FluidR3 soundfonts are okay for most midi files if you just want to get up and running quickly, however I recommend the Tyroland soundfont, it has well matched and balanced instruments with proper settings for reverb and chorus and sounds great with fluidsynth and timidity.

https://musical-artifacts.com/artifacts/1305

If it still sounds bad, try finding better midi files or playing better.