You need to specify the parsing format as that is non-standard. DateTime.ParseExact allows you to specify the format.
Something like this will work, however I've yet to verify if that time-zone part is working correctly, seems to give me a date/time at 1800 hrs... Ah this is because where I am it is BST (GMT +1).
static void Main(string[] args)
{
string date = "Wed Jul 25 19:41:36 2012 +0200";
string format = "ddd MMM dd HH:mm:ss yyyy %K";
//string format = "ddd MMM dd HH:mm:ss yyyy zzz"; // Also works.
DateTime dateTime = DateTime.ParseExact(date, format, CultureInfo.InvariantCulture);
Console.ReadLine();
}
DateTime string formatting options are documented here, you can create a parse string using any combination of these to parse a DateTime successfully.
Another example of this can be found here: Parse DateTime From Odd Format