Old English and other Indo-European languages had a three-fold distinction of a grammatical category called gender. It's not the same as what is commonly called gender, where a rooster might be masculine (he), a mare feminine (she), and a barn neuter (it). Instead, in Old English the way words were assigned to a gender had little to do with biological sex or social constructions. The association between word and gender is arbitrary.
Follow this link to an exercise that will walk you through some features of gender in Old English.