A mass flow controller comprising: a pressure-based flow meter constructed and arranged to measure the flow rate of mass through the mass flow controller; a thermal-based flow meter constructed and arranged to measure flow rate of mass through the mass flow controller; a control valve constructed and arranged so as to control the flow rate of mass through the mass flow controller in response to a control signal generated as a function of the flow rate as measured by one of the flow meters (50; 30); an inlet for receiving a gas; and a system controller configured with a cross-over value, wherein the system controller generates the control signal as a function of the flow rate measured by the thermal-based flow meter when the measured flow rate is below the cross-over value, and generates the control signal as a function of the flow rate measured by the pressure-based flow meter when the measured flow rate is greater than the cross-over valve, characterised in that the system controller is further constructed and arranged to (a) generate the control signal as a function of the flow rate as measured by the thermal-based flow meter when the measured flow rate is relatively low and there are no pressure disturbances at the inlet, (b) change so as to generate the control signal as a function of the flow rate as measured by the pressure-based flow meter when the measured flow rate is relatively low and there is a pressure disturbance at the inlet, and (c) generate the control signal as a function of the flow rate as measured by the pressure-based flow meter when the flow rate is relatively high, so that the mass flow controller is relatively insensitive to inlet pressure perturbations. a pressure-based flow meter constructed and arranged to measure the flow rate of mass through the mass flow controller; a thermal-based flow meter constructed and arranged to measure flow rate of mass through the mass flow controller; a control valve constructed and arranged so as to control the flow rate of mass through the mass flow controller in response to a control signal generated as a function of the flow rate as measured by one of the flow meters (50; 30); an inlet for receiving a gas; and a system controller configured with a cross-over value, wherein the system controller generates the control signal as a function of the flow rate measured by the thermal-based flow meter when the measured flow rate is below the cross-over value, and generates the control signal as a function of the flow rate measured by the pressure-based flow meter when the measured flow rate is greater than the cross-over valve, characterised in that the system controller is further constructed and arranged to (a) generate the control signal as a function of the flow rate as measured by the thermal-based flow meter when the measured flow rate is relatively low and there are no pressure disturbances at the inlet, (b) change so as to generate the control signal as a function of the flow rate as measured by the pressure-based flow meter when the measured flow rate is relatively low and there is a pressure disturbance at the inlet, and (c) generate the control signal as a function of the flow rate as measured (a) generate the control signal as a function of the flow rate as measured by the thermal-based flow meter when the measured flow rate is relatively low and there are no pressure disturbances at the inlet, (b) change so as to generate the control signal as a function of the flow rate as measured by the pressure-based flow meter when the measured flow rate is relatively low and there is a pressure disturbance at the inlet, and (c) generate the control signal as a function of the flow rate as measured by the pressure-based flow meter when the flow rate is relatively high, so that the mass flow controller is relatively insensitive to inlet pressure perturbations.