I see a couple of issues...
1) File.OpenRead returns as System.IO.FileStream and now has a lock on that file until the stream is closed, you will receive an exception about the file is in use by another process. I do not see you reading the file so ommit that.
2) The System.IO.File.Copy needs to have a file name for both parameters, you cannot use a destination directory you must add the destination filename as well
e.g.
System.IO.File.Copy(d.FullName, @"D:\Projects\EFO\Project_Synchronizer\Synchronizer WEB\otraWebService\otraWebService\Bilder\" + d.Name;);
foreach (FileInfo d in directories)
{
if (d.Extension == ".jpg")
{
CreateFolder("Bilder");
File.OpenRead(d.FullName);
System.IO.File.Copy(d.FullName, @"D:\Projects\EFO\Project_Synchronizer\Synchronizer WEB\otraWebService\otraWebService\Bilder\" + d.Name);
}