C# or VB.NET, they do not create a folder for you automatically. So, yes, you need to strip out the file name from the long pathed file name, and traverse along the path to make sure each folder in the path exists (and create it if not).
Thus, your code would potentially fail, if the path is like "C:\Folder1\folder2\fodler3\myfile.dwg" and "folder2" does not exists, because you only chek if "C:\folder1\folder2\folder3" exists or not and try to create folder3 without creating folder2 first.
And also make sure you would handle IOException properly (creating folder may fail due to file system access permission, for example).