The following is a rough exposition of what the requirement for differentiability on the parameters means here.

$U$ involves the log posterior up to an additive constant where $\theta$ are the model parameters.  The requirement for differentiability is essentially that one can make a miniscule change to a parameter $\theta$ and this will return a small change in the posterior $U(\theta)$.  

Problems of this sort often crop up in some important cases:

 - Parameters which can take on only a few discrete values. E.g. counts, categories, binary variables. To see think about what happens if we have $U(\theta)$ defined on $\theta \in \{\ 0, 1\}$ and what happens if you add a small number e.g. $\theta' = \theta + 1/100000$, we get a value which is no longer valid to even plug into our $U$.
 - Parameters on intervals with at least one boundary, e.g lengths, times etc. (what happens if we take a small step to the left at $\theta=0$ when we have a requirement that $\theta \geq 0$?)

HMC needs this because it operates by adding small changes to $\theta$. The differentiability requirement is, then, roughly that the probability won't fall off a cliff if we make a small change to $\theta$.

Work-arounds exist for many such problems, but will generally require reparameterisation of the likelihood and prior.