Changing IP of msloop This changes the IP of msloop using WMI(Win32_NetworkAdapterConfiguration), which takes about 1~2sec.  

But, if I work on another computer, it works much much slower, for about 50~60sec.

My Computer:

OS: Window 7 Professional
RAM: 8GB  

Another Computer:

OS: Window XP SP3
RAM: 2GB

public void setIP () {
    ManagementClass objMC = new ManagementClass("Win32_NetworkAdapterConfiguration");
    ManagementObjectCollection objMOC = objMC.GetInstances();

    foreach (ManagementObject objMO in objMOC) {
        if (!(bool) objMO["IPEnabled"]) {
            continue;
        } else if ((String) objMO["ServiceName"] != "msloop") {
            continue;
        }

        try {
            ManagementBaseObject objNewIP = objMO.GetMethodParameters("EnableStatic");
            ManagementBaseObject objNewGate = objMO.GetMethodParameters("SetGateways");

            objNewIP["IPAddress"] = new string[] { "110.110.110.1" };
            objNewIP["SubnetMask"] = new string[] { "255.255.255.252" };

            objNewGate["GatewayCostMetric"] = new string[] { "1" };

            objMO.InvokeMethod("EnableStatic", objNewIP, null);
            Console.WriteLine("EnableStatic End");
            objMO.InvokeMethod("SetGateways", objNewGate, null);
            Console.WriteLine("SetGateways End");

            Console.WriteLine("Change OK");
            Console.WriteLine("==================================================================");
        } catch (Exception ex) {
            MessageBox.Show("Unable to Set IP : " + ex.Message);
        }
    }
}


The result is always "Change OK". It works on XP, but very slowly.  Is the problem with the OP or the RAM?
Can't help with the speed question but some generic remarks:


Both ManagementClass and ManagementObjectCollection are IDisposable and should therefore be wrapped in a using block to make sure any unmanaged resources are properly released.
Prefixing all your local variables with obj smells like hungarian notation and is generally discouraged. It adds not value and just clutter. Your variable names should indicate what they represent and not what type they are.
In C# land the common naming convention for methods is PascalCase and not camelCase. It pays to stick to general naming conventions for the ecosystem you are working in as it will make your code look more familiar to other developers.