A washing machine and a method for controlling the same are provided to detect the weight of laundry accurately by comparing a torque variation with a set value and judging a weight detection time based on the result. A washing machine comprises a washing tub, a washing motor(30), and a control unit(10). The control unit disentangles laundry by driving the washing motor and judges a weight detection time while disentangling laundry in accordance with a variation of torque of the washing motor. The control unit repeatedly disentangles laundry if the variation of torque of the washing machine is greater than a set value and judges the weight of the laundry if the variation of torque of the washing machine is less than the set value.