This writeup uses the notation of Sierpinski's Theorem, and anyway is a proof of what's there, so why don't you read that first?

Suppose, to the contrary, that for some a1,...,ak,b there exist infinitely many solutions in natural numbers to the equation (*). Let F be the set of all solutions. By Robinson's overspill lemma, F^ (see NSA: some pseudo set theory for an explanation of "content") contains non-standard solutions of the equation. These are solutions where at least one xj is non-standard: call N the set of natural numbers; the pseudo-elements N^-N are the "non-standard natural numbers".

Let's examine one such non-standard solution. It claims that a1/x1+...+ak/xk=b, where some of the x's are non-standard natural numbers.

Claim 1:

If x is a non-standard natural number, then x>n for any (standard) natural number n.

Proof of claim 1:

There are only finitely many (standard) natural numbers {t: t<=n}; by Robinson's overspill lemma, there are no such non-standard ones. Since ">" (on the real numbers, say) is a total order, a property we can define in first order predicate calculus, "*->" (the transferred predicate on the pseudo-real numbers) is a total order too.

It directly follows that for any (positive) real number a, the *-number a/x is positive and smaller than any (standard) real number ε>0. Call such a number a positive infinitesimal.

Claim 2:

The sum of j (>0) positive infinitesimals is a positive infinitesimal.

Proof of claim 2:

In the standard world, it's true that for all x1,...,xj and ε/j, if 0<x1,...,xj<ε/j then 0<x1+...+xj<ε. Transferring to the non-standard world, taking ε to be standard real numbers, shows the claim.

Proof of the theorem:

We've seen that a non-standard solution contains some non-standard elements. Suppose without loss of generality that x1,...,xj are non-standard and xj+1,...,xk are standard (0<j<=k). Then
a1/x1+...+aj/xj = b - (aj+1/xj+1+...+ak/xk).
Now the LHS is a positive infinitesimal, but the RHS is some expression composed entirely of standard real numbers! Thus the RHS is some standard real number ε. It cannot equal a positive infinitesimal: it's positive, so it cannot be less than ε/2. But ε/2 is a standard real number too, thus larger than any positive infinitesimal.

This contradiction shows that the premise (having an infinite number of solutions) is absurd!