It doesn;t work because the only property for a string is the Length, and a DataGridView uses properties to decide what to display.
What you can do is encapsulate your string in another class:
List<string> student = new List<string>() { "abc", "xyz", "pqr" };
var result = student.Select(s => new { value = s }).ToList();
myDataGridView.DataSource = result;
Will work.