Genetic algorithms (usually) work on discrete data (enums, integer ranges, etc.). A typical application for GAs is searching a discrete space for a "good enough" solution when the only available alternative is a brute-force search (evaluating all combinations).
Neural networks, on the other hand, (usually) work on continuous data (floats, etc.). A typical application for NNs is function approximation, where you've got a set X of inputs and a set Y of related outputs, but the analytical function f: X → Y.
Of course, there are thousands of variants of both, so the line between them is somewhat blurred.