You can root your device and use an app like
apps2sd or there is a way to move more apps to the sd card without rooting ....
If you've got 2.2 or higher You can change the default location to the SD card if you want to. And, once that is changed you can move even more apps to the SD card, even though they were installed to internal memory.
If you want to move more apps to the SD card, you'll need to have the Android SDK installed.
How-To Install Android SDK On Windows, Mac and Linux
Then on your phone go to settings>applications>development and enable USB Debugging. Plug your phone into the PC using the USB cable.
open a command prompt on your PC (start>run type "cmd" press ENTER)
Change directory to the android-sdk-windows\tools folder
At the prompt type
and you should see your phone listed as a serial number.
type
Code:
adb shell pm setInstallLocation 2
Done.
Now the default location to install apps is the SD card. And, some apps that you couldn't move to the SD card will now be able to be moved. Keep in mind Widgets and services should always be installed to the phone and not the SD card, so if you follow the steps above and you install a widget afterwards, you will need to go to settings>applications>manage applications and manually move it to the phone. If you want to set the default install location back to the phone, you simply repeat the process but use
Code:
adb shell setInstallLocation 0