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.

[**Added**: 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!

[**Added**: the explicit geometric realization of elements of the $n$-Selmer group is discussed in this important paper.]