Will creating an index improve performance on a full scan
Currently your data is stored as either a heap or a clustered index, with all of it that structure.

If your data is in a heap and you create a clustered index, then you will reorganise all that data into a tree structure, and you will leverage some of the nicer aspects of clustered indexes, such as ordered data, and (unlike heaps) data without forwarding records (which can slow down scans). The data will be about the same size though.

If you create a non-clustered index, then this is a COPY of some of the data. This can help if you're getting only a subset of the columns or rows. If your non-clustered index doesn't include all the columns that you need for your query, it probably won't get used. But if you're only wanting three columns in your query, and your index has all three, you can save quite a bit of effort. You might get 100 times as many rows onto each page on disk, and scanning this index should therefore take just 1% of the effort.

Having indexes is just like in paper-based systems. If all you need is a list of names, then you can put all that on a single page instead of using the filing cabinet that has a dossier on each person. You'll have to maintain that list, but it might be worthwhile with the savings in other areas.