The path is relative to the current working directory. When running in the IDE, that will be the directory in which the executable resides. Otherwise it's typically the directory in which you started the program.
So if your current directory (on the command line) is C:\foo and you enter the command "C:\bar\myprogram.exe", your program will start in C:\foo and if you try to open the file "fooby.txt", it will look for "C:\foo\fooby.txt".
See How do I get the name of the current executable in C#? for information about how to get the executable file path.