A good discussion of consonant harmony typology is found in Rose and Walker's 2004 paper in the journal Language, "A Typology of Consonant Agreement as Correspondence".
One of the more common harmony processes is coronal harmony, which affects coronal fricatives, such as s and sh. Then, all coronal fricatives belong to the +anterior class (s-like sounds) or the -anterior class (sh-like sounds). Such patterns are found in the Dene (Athabaskan) languages such as Navajo (Young and Morgan 1987, McDonough 2003), Tahltan (Shaw 1991), Western Apache, and in Chumash on the California coast (Applegate 1972, Campbell 1997). In Tahltan, Shaw showed that coronal harmony affects three coronal fricatives, s, sh and the interdental th. The following examples are given by de Reuse: in Western Apache, the verbal prefix si- is an alveolar fricative, as in the following forms:
Thus, all sibilant obstruents (fricatives and affricates) in these languages are divided into two groups, +anterior (s, ts, dz) and -anterior (sh, ch, j). In Navajo, as in most languages with consonant harmony, there is a constraint on the shape of roots (a well-formedness constraint) that is identical to the harmony process. All roots with sibiliant affricates or fricatives have the same value for anteriority. Shaw (1991) provides a phonological analysis of this process, using data from research on Tahltan.
There are two interesting aspects of the process in Navajo. Firstly, morphemes that participate are domain-specific, only the last two domains are affected (conjunct + stem). Verbal morphemes from the outer or 'disjunct' domain are not affected by the process: the process is morphologically conditioned. Secondly, the lateral affricate and fricative (dl, t? and ?) appear with both values. Young and Morgan (1987) offer an extensive sets of examples of this type of morpheme alternation in Navajo.
A different example of coronal harmony, sometimes referred to as NATI rule, occurs in Sanskrit, where [n] is retroflexed to [?] if it is preceded by a retroflex continuant, mainly [?] and [?], in the same word, even at a distance. The retroflexion spreads from left to right affecting any coronal nasal until the word boundary is reached. This phenomenon, however, is blocked whenever a coronal plosive is placed between [?]/[?] and [n]. For instance, in the noun br?hma?a "Brahmin priest" (derived from the root *b?h "to make strong" + the suffix -man- + the thematic vowel -a), the original coronal [n] (IAST: n) of the action noun suffix -man changes to a retroflex [?] (IAST: ?) due to consonant harmony triggered by [?] (IAST: r). On the other hand, in the word arcana "homage, praising" (from *?c "to praise" + -man- + -a) consonant harmony is prevented by the coronal stop [t] (IAST: c) which blocks the assimilation.
Old Chinese probably had some constraint governing the shape of disyllables. According to modern reconstructions of Old Chinese phonology, type A and B syllables almost never co-occur in a disyllabic word. In the latest reconstruction of Old Chinese phonology proposed by Baxter and Sagart (2014), this type A vs. type B distinction can be traced back to the presence or the absence of pharyngealization respectively, cf. ? nà < OC *n?up "to bring into" (type A) and ? rù < OC *nup "to enter" (type B) only differing by the [±pharyngeal] trait of the initial consonant. Onsets of type B syllables, lacking of pharyngealization, are subject to palatalization in Middle Chinese (indicated by a palatal medial -j- in Baxter's notation), while type A pharyngealized onsets failed to palatalize. In many ancient disyllabic words type A and type B characters do not mix, there are almost solely bisyllabic morphemes either with type A syllables, such as:
or with type B syllables, including:
Such pattern seems to suggest the existence of some sort of pharyngeal harmony in Old Chinese. However, there are notable, though infrequent, exceptions to this tendency, manifesting in ancient compounds that are generally hard to analyze. From this list the following word is often mentioned:
Guaraní shows nasal harmony, and certain affixes have alternative forms according to whether the root includes a nasal (vowel or consonant) or not. For example, the reflexive prefix is realized as oral je- before an oral stem like juka "kill", but as nasal ñe- before a nasal stem like nupã "hit". The ã makes the stem nasal.
Some Finnish-speakers find it hard to pronounce both 'b' and 'p' in loanwords (pubi, pub) and so they voice (bubi) or devoice (pupi) the entire word. It should, however, be noted that the distinction between the consonants is not native to Finnish. Native Finnish words do not use /b/.
In the Ngeté-Herdé language of Cameroon, voicing of word-medial obstruents is strongly influenced by voicing of the word-initial consonant. Generally, all obstruents in a word are either voiced or voiceless.