is it electronegativity or a difference in charge which produces current
More apt chemistry term to be taken into account is standard reduction potential. Not electronegativity. It's a measure of ability of an atom to get reduced i.e., gain an electron. The electrode with more reduction potential is taken as cathode, where reduction takes place. And the electrode with lesser reduction potential is taken as anode, where oxidation takes place. In a battery, both reduction and oxidation reactions takes place simultaneously to produce current through the external circuit (known as Half reactions, and together known as Redox Reaction). So that at anode electrons are generated , and at cathode these electrons are gained. The difference between the reduction potentials of cathode and anode makes up the cell potential or voltage of the battery. This is responsible for the electric field from cathode/positive to anode/negative of the battery.