Well, you are right in saying that both of them are linear data types, but the difference comes in the type of data they store.
A vector stores only homogenous data, while a list stores heterogenous data.
Below is an example to demonstrate that:
Vector:
names<-c("Raj","Amy","Sheldon","Leonerd")
This is a vector which comprises of elements of only one type;
List:
MixBag<-list(name="Raj",Indian=TRUE,Salary=64283)
Now, we have defined a list comprising of three elements, all of which are of different data types.
So, if you want to use a linear homogenous data types then you can go with Vector, but on the other hand if you want to use a linear heterogenous data type then you can use a list.