They are close in meaning, but not quite the same.
'Predict' is the more common of the two. Predictions are usually based on evidence. For example, experts predict trends in business and economics. 'Forecast' has a similar meaning here.
'Foresee' is less common, and means 'I know this is going to happen'. This is more based on instinct and experience than on facts or evidence.