The Main Rotor
The lifting force is produced by the rotors.
As they spin they cut into the air and produce lift.
Each blade produces an equal share of the lifting force.
Spinning the rotor against the air causes lift, allowing the helicopter to rise vertically or hover.
Tilting the spinning rotor will cause flight in the direction of the tilt.
The Tail Rotor
The tail rotor is very important. If you spin a rotor using an engine, the rotor will rotate, but the engine and the helicopter will try to rotate in the opposite direction.
The tail rotor is used like a small propeller, to pull against torque reaction and hold the helicopter straight.
By applying more or less pitch (angle) to the tail rotor blades it can be used to make the helicopter turn left or right, becoming a rudder. The tail rotor is connected to the main rotor through a gearbox.
When using the tail rotor trying to compensate the torque, the result is an excess of force in the direction for which the tail rotor is meant to compensate, which will tend to make the helicopter drift sideways. Pilots tend to compensate by applying a little cyclic pitch, but designers also help the situation by setting up the control rigging to compensate.
The result is that many helicopters tend to lean to one side in the hover and often touch down consistently on one wheel first. On the other hand if you observe a hovering helicopter head-on you will often note that the rotor is slightly tilted. All this is a manifestation of the drift phenomenon.
The engine(s) simply drive the rotors and did not assist directly with forward flight (like they would with a plane). There is a very small amount of thrust that comes from engine exhaust, but it is so small that it does not effect flight performance.