Hopefully this will help others as it helped me. I'm running ICS on a TMobile Vivacity and Link2SD doesn't really work properly, I have created a 2nd partition on the sd-card which is ext3, but still the internal memory said it was only 30/40mb free. Made the phone pretty useless TBH.
Then I installed Mounts2SD (FYI - this is only for people who understand exactly what this is doing, it's a number of scripts that create symlinks on the ext2 partition).
Now I have 155mb FREE ALL the time, I have moved Applications, Data and Dalvik Cache to the memory card and can install pretty much as many apps as I want!
I do however have a 16GB Samsung Class 10 Micro SD card, so that helps with keeping the phone speedy.
I tried Links2SD again and I actually found it really helpful. I created a second partition on my SD card of about 500mb and Links2SD creates links automatically after every app I install so I don't have to worry about my phone memory.