SolidWorks files can't be opened with an earlier version than the one they were last saved with, and they can't be saved back so an earlier version can open them (except as a dumb solid; see two paragraphs down). I know that isn't true for many programs, such as Word, Excel, etc., but SolidWorks is many times more complex than these programs, and features may have been created with functions that weren’t available in earlier versions, and there are probably other reasons. I think Ryan McVay gave one of the best explanations I've seen in the Discussion I link to a few paragraphs down: "Well, because this would require the software to bear the burden of including feature checks, older code, extra code to do the checking and converting, extra Parasolid version exporting, and file restructuring, etc. to exist in the software. Your install DVD just went from 4GB to 10GB- oh crap that doesn’t fit on dvd anymore! And this would only increase every version because you are carrying legacy code and export tools. This is one of the many, but a big reason, why you don’t have backward compatibility across all CAD packages and why users rely on neutral solid exports like STEP and Parasolid- outside of the kernel and 3d definition."
People have been asking for backwards compatibility for years, and maybe someday it will happen, but it hasn’t yet. Document templates are also not backwards compatible. If a template was saved with SW2015 you won't be able to start a new drawing, part, etc. with it using SW2014. Service packs are backwards compatible within the same version. For example, a file saved with SW2014 service pack 5 can be opened with SW2014 service pack 1.
SW models may be saved as several forms of dumb solids, and then opened with earlier versions, but they will lose the features in the tree. According to Jim Wilkinson (and he would know), Parasolid is your best option when doing this. His response at Re: compatibility between versions was "If you do this, make sure to use Parasolid. Parasolid is the native format of SOLIDWORKS so there is no translation when going back. STL is DEFINITELY a bad choice because it only transfers tessellated data which is nearly useless compared to the original b-rep solid/surface data."
SW2013 introduced the ability to open files one level newer with service pack 5, and use these files in assemblies, but that has limited functionality (see 2016 SOLIDWORKS Help - Future Version Components in Earlier Releases for more information). Due to an architectural change in SW2015 that ability was suspended for one year. It was supposed to be re-instated with SW2016 (see Jody Stiles reply here:Will solidworks 2016 files work with 2015?), but when I checked it didn't seem to be working for me. I never use it anyway, so it hasn't been an issue for me.
Occasionally someone will ask if there's a way to tell which version was used to save a file if you can't open it. Yes, there is. In Windows Explorer, browse to the folder containing the file. Right-click on a blank space at the top, beside the column names, and choose "More..."
Select "SW Last saved with".
That will add a column indicating which SW version last saved the file.
By the way, I believe in giving credit where it's due, and I wouldn't want anyone to think I'm smart enough to have figured this out for myself. I learned about it in a post by Steve Calvert at Can you tell what SW version a model was created with?