One way to prove the general Van Kampen Theorem is to prove it first for coverings by finitely many open sets, and then generalize to the arbitrarily large coverings using transfinite induction. Whether this is simpler than Hatcher's direct argument for arbitrary coverings (Theorem 1.20 in his Algebraic Topology book) is probably a matter of taste.