Visarga Sandhi is one example comes to my mind. It is primarily used to handle the negative cases. For example, devoid of people is 'Nirjan' which is built using 'Nih'(No) and 'Jan'(People), whereas 'Nishchal' which means devoid of motion comes from 'Nih'(No) and 'Chal'(Motion). I'm not exactly sure but the rule probably goes along the lines of - When amalgamating "Uh" sound with Hard Sounds(Ka, Cha, Ta, Tha, Pa) you add a 'Sh' sound as in Nishkalmash, Nishchal, Nishchinth etc whereas when amalgamating with Soft sounds(Ga, Ja, Da, Dha, Ba) you add a 'Rr' sound as in Nirbhay, Nirday etc.
You have hundreds of these rules that deal with all kinds of transformations, sometimes simple rules like Ka => Ga, Cha => Ja etc. and sometimes more complex rules which are conditional on the consonant sounds that precede the object of transformation(Namah + Te => Namaste). Lot of them feel arbitrarily imposed but they just feel right when you say them out aloud.
Here are a couple of examples involving vowel transformations.
Mahaa(Great) + Indra(Lord) => Mahendra(Great Lord) (aa(as in car) + e(as in kick) => ae(as in vent))
Mahi(Earth) + Indra(Lord) => Mahindra(Lord of Earth) (e(as in kick) + e(as in kick) => ee(as in screen))