If i undertsand the question correctly the following should work
int lineNum = 3;
textBox1.SelectionStart = textBox1.GetFirstCharIndexFromLine(lineNum);
GetFirstCharIndexFromLine gets the character index of the first character on the specified line, setting the selection start to this will mean your selection starts from the beginning of that line.
EDIT:
just to add a bit more, in your comment in solution 2 you say you want to position the selection start at an arbitrary point along the line not just at the beginning, to do that simply add the number of characters you want to indent from the beginning of the line:
int lineNum = 3;
int characterNum = 5;
textBox1.SelectionStart = textBox1.GetFirstCharIndexFromLine(lineNum) + characterNum;