Boot into the rescue mode and run dpkg to try to fix any broken package that you may have. When you're finished and get back to the screen with options in rescue mode, choose the enable network option and see if you can run some codes in the terminal console, after you login, something like:
sudo apt-get update or
sudo apt-get upgrade
If you can get somehow the Internet to work, you can try to run these commands:
sudo apt-get install xubuntu-desktop
sudo apt-get install lightdm-greeter
LightdDm greeter should be installed by the previous command but you never know. Finally you can run this command:
sudo apt-get remove unity-greeter
Reboot and you should be able to get past the freezin screen and login using lightdm greeter.
Next you can try installing with Synaptic the so called lowlatency linux headers and the linux image. First you should install synaptic either from the Software Center or in a terminal window:
sudo apt-get install synaptic
Next you can open Synaptic Package Manager and type kernel in the search field or better use the search button with kernel as keyword. Once you get the results, look for and install the same version of linux image and linux headers with your present ones. What you need is linux-image-3.13.0-24-lowlatency and the linux-headers-3.13.0-24-lowlatency. Pay attention to match the numbers for the kernel which is something like 3.13.0-24-28 or it can be 3.13.0-24-46 or something else. You want to install the exact same version of the lowlatency linux headers and image with your linux image generic and the generic linux headers.
After you're done you can run in a terminal window this code:
sudo update-grub
Grub is updated during the installation but you can do it again just to make sure you keep things in good order. After reboot you can choose to boot the lowlatency kernel instead of the generic kernel using Advanced Option for Ubuntu.
This method works for both 32bit machines and 64 bit machines. The word out there is that it works better for Ubuntu 64bit but it worked ok for me too, I am running Ubuntu 14.04 32bit.