I believe the following is an algorithm, albeit a horrible one.

First, as the OP surely knows, it comes down entirely to curves of genus one.  Indeed, if the genus is at least $2$ then by Faltings' Theorem there are only finitely many $K$-rational points, whereas if the genus is zero, there are infinitely many rational points iff the curve is isomorphic over $K$ to the projective line iff a certain Hilbert symbol vanishes.  This is all very well understood.

Step 1: If for an elliptic curve $E_{/K}$ the group $Sha(K,E)$ is finite, then there is an algorithm to compute the Mordell-Weil group $E(K)$.  

Indeed, it's enough to know that there exists some prime number $p$ such that $Sha(K,E)[p] = 0$.  Then the weak Mordell-Weil group $E(K)/pE(K)$ is isomorphic to the $p$-Selmer group, which is known to be (in principle!) effectively computable.  Since the torsion subgroup is well-known to be effectively computable, knowing $E(K)/pE(K)$ gives us the Mordell-Weil rank, and if you know the rank then by enough searching you can find a basis for the free part of the Mordell-Weil group.

[<b>Added</b>: You don't actually need to know an explicit value of such a prime number $p$.  You can compute the $p$-Selmer group for any value of $p$ you want and you can set up a program that given infinite time will compute $E(K)/pE(K)$.  By running these programs on enough primes simultaneously, in finite time you will find a prime $p$ such that $E(K)/pE(K) = \operatorname{Sel}(K,E)[p]$.]

Step 2: Suppose that $C_{/K}$ is a genus one curve over $K$.  One may effectively decide (Hensel's Lemma, Weil bounds...) whether or not $C$ has points over every completion of $K$.  If not, then certainly $C(K)$ is empty and hence finite.

Step 3: Next compute the Mordell-Weil group of the Jacobian elliptic curve of $C$ using Step 1.  If this group is finite, then $C(K)$ is finite -- possibly empty.

Step 4: Suppose that $C$ has points everywhere locally and the Jacobian $E$ has positive rank.  Then $C$ represents an element of $Sha(K,E)[n]$ for some $n \in \mathbb{Z}$.  Since we can effectively compute the weak Mordell-Weil and Selmer groups of $E$, we can compute $Sha(K,E)[n]$.  If it happens to be trivial then $C$ is necessarily isomorphic to $E$ so has infinitely many rational points.

Step 5: Finally, suppose that $Sha(K,E)[n]$ is nontrivial.  Thus the question is whether $C$ represents a nontrivial element of this group.  But one can compute defining systems of equations for each of the curves $C_i$ representing the elements of this group (I am pretty sure, anyway; if this is the sticking point, let me know and I'll think about it more).  Now one can do the following ridiculous thing: search for an isomorphism between $C$ and $C_i$ by trying all possible maps.  We know that $C$ is isomorphic to one of these curves -- possibly $C_1 = E$ -- so eventually we will find it!

[<b>Added</b>: the explicit geometric realization of elements of the $n$-Selmer group is discussed in [this important paper][1].]

[1]: http://www.mathe2.uni-bayreuth.de/stoll/papers/Explicit-Descent-II-2006-11-20.pdf