I have seen many sources that describe the asterisk in something like *medhu- as indicating that the word is reconstructed and not observed in natural language. But I haven't seen a description of the trailing dash, and I see some places that just write "*medhu" ... When the dash is given, what does it represent?
In reconstructions, hyphens indicate boundaries between morphemes (e.g. between the root, and any prefixes, suffixes, or endings).
In this particular case the reason you're coming across this is slightly different. In languages where words inflect (taking different forms depending on what role they play in the sentence), some particular form needs to be chosen as the one that appears in wordlists. This is usually called the citation form, but names like dictionary form are also used. In this context, a "word" (including all its inflected forms) is called a lemma. In most languages there is a specific norm as to which particular form of a lemma is used as the citation form.
With Proto-Indo-European, as in Sanskrit, there are two competing norms for the citation form of nouns. One is to use the nominative singular (as in Latin, German, etc), and one is to use the stem (which isn't necessarily ever used outside of citing the lemma itself).
If the stem is used as the citation form, it is shown with a trailing hyphen to show that some ending will be applied in an actual sentence.
In the case of *medhu, this word is a neuter athematic noun, and so it has no nominative singular ending (likewise the vocative and accusative singular endings), meaning that its nominative singular and its stem are identical, although the stem will usually still be written *medhu- to indicate that the stem is intended, rather than the nominative/vocative/accusative singular specifically.
For an example where the two differ, take the PIE word *bʰeh₂ǵʰús (whence English bough). The form I have given here is the nominative singular, but the stem is *bʰeh₂ǵʰú-.