Quoted By:
Best offensive typing sorta depends on whether you're trying to go for maximum SE coverage or maximum neutral coverage. The former is a virtual tie between ground/fire, ground/fairy, ground/ice, and ground/rock (noticing a pattern? ground is pretty fucking amazing). Ground/Fairy gets special mention because the types complement each other insanely well as ground is SE vs all types that fairy is NVE against (steel, poison, fire), and both of the ones that are SE vs it (steel, poison).
Best neutral coverage is basically a tie between boltbeam and ghost/fighting, even though the former isn't true neutral since Rotom-Heat resists, though Ghost/Fighting has it's stab coverage fully walled by a theoretical normal/ghost Pokemon (should something like that get released)