5x120 is the stud pattern. 5 is obviously the number of studs or bolt holes and the 120 is the diameter of the studs (mm) as in the picture below.
For example e30 is 4x100, 4 lug holes and a diameter of 100mm
The offset is the distance from the mounting face to the centerline of the wheel (measured in mm).
Zero offset means the mounting face is in line with the centerline of the wheel. Positive means the mounting face is towards the outside of the wheel. Negitive is the opposite, mounting face towards the inside of the wheel.
Higher positive offsets are generally found on front wheel drive cars. Negitive offsets are generally associated with large amounts of dish (with a large width).
BMW's run positive offsets. E28, E30, E34, E38, E39 etc (The majority of the BMW range) run offsets in the range of 15-25 running normal factory widths. The E36 chassis (E36/Z3), E46 (non M3), E53, E70, E8X, E9X all run higher offsets in the range of 35-45 running factory widths.
The E21 and the E30 are the only E code bimmers that run 4 stud. The rest of the range runs 5x120.
As the wheels get wider the offset you will need for the car will change as if you increase the width but keep the same offset the wheel will get wider evenly on both sides and may either hit the strut or the guard. Generally as you get wider you would want to lower the offset as you have more room to work under the guards than towards the strut.
Hope that helps.