So here is the reduction from 3-SAT;
We are given boolean satisfiability problem of the form
$$
(a_1 \vee b_1 \vee c_1) \wedge \dotsb \wedge (a_k \vee b_k \vee c_k),
$$
where each of the $a_i,b_i,c_j \in \{x_1,\dotsc,x_n,\bar{x}_1,\dotsc,\bar{x}_n\}$ (so there are $n$ variables).
Let $N$ be an integer to be determined later.
Here is the graph we are constructing. First, the vertex set:
- Two vertices, $x_i$, $\bar{x}_i$.
- One 'terminal' vertex $T$.
- One vertex, $C_i$ for each clause in the boolean expression.
- Vertices $v_{i,1},\dotsc,v_{i,N}$ for each $i=1,\dotsc,n$.
We describe the edges as a union of paths:
These are the designated paths for the pairs $(x_i,T)$
and $(\bar{x}_i,T)$.
From $x_i$ (and $\bar{x}_i)$ there is the path
starting as $x_i,v_{i,1},\dotsc,v_{i,N}$,
then passing through all vertices corresponding to clauses containing
the variable $x_i$ (in some order), and finally ending at $T$.
All other paths from some vertex to another is simply an edge between them.
Now, an assignment making the formula true, corresponds to choosing $n$
paths, (picking if $x_i$ or $\bar{x}_i$ is true) each passing through the sequence of auxiliary vertices
$v_{i,1},\dotsc,v_{i,N}$. This covers all vertices, except
$n$ vertices $x_i$ or $\bar{x}_i$, for which we need to cover, say via
the direct edge to $T$. Hence, $2n$ paths in total.
Now, if we DO NOT choose any of the long paths
$x_i \to T$ or $\bar{x}_i \to T$,
we need to cover $x_i,v_{i,1},\dotsc,v_{i,N}$ by some other means,
but this requires at least $N/2$ extra paths.
So, if $N$ is large, this is worse than $2n$.
Hence, we can path-cover the above graph with $2n$ paths,
if and only if the formula is satisfiable.