Helium balloons fly because they're lighter than air.
As you walk through air so easily, it's natural to think of air as weighing nothing, though that is not the case. A cubic foot of air weighs almost a tenth of a pound. That's more than ten pounds of air in the average walk-in closet!
Although it weighs less than other fluids like water, air's weight has important effects.
For example, if the air in your room has weight, what keeps it from falling down into a thin layer along the floor? The answer is something called buoyant force.
Visualize a clump of air in front of your face the size of a party balloon. That air weighs about as much as twenty pennies. Gravity is pulling down on this weight, making the air want to fall. The only reason it stays in place is because all the surrounding air is pushing up on it with an equal force. This is the buoyant force, and it's enough to counteract a tenth of a pound for every cubic foot of space. Think of a tug-of-war between evenly matched opponents; gravity pulls down and buoyant force pushes up with equal strength, so the air stays put.
Helium, however, weighs much less than air. The surrounding air doesn't care what's in your balloon, it will always push up with a buoyant force equal to the weight of twenty pennies. The helium balloon weighs LESS than twenty pennies though, throwing off the balance in that tug-of-war between gravity and buoyant force. With the tug of gravity now less than the buoyant force, your balloon rises up, up and away.