Ice is the recommended treatment for acute injuries. It is especially helpful to reduce swelling and control pain. Ice is most effective when it is applied early and often for the first 48 hours. Heat, on the other hand, increases circulation and raises skin temperature.
The problem with ice is that people don't get told how long to have it on for. So my rule of thumb is between 2-5 minutes is normally good for most sports types injuries. Any longer and it will cut off the circulation needed to bring in the reparative cells and any shorter it won't be enough to create a flush and reduce the inflammation.