CONVERT is SQL Server specific, CAST is ANSI.
CONVERT is more flexible in that you can format dates etc. Other than that, they are pretty much the same. If you don't care about the extended features, use CAST.
Check http://msdn.microsoft.com/en-us/library/ms187928.aspx for more detail on specifics