I originally created a sandbox solution. Created a elements file to hold all the Fields. I created 5 fields. I then created a content type to hold all 5 fields. I then created a List definition and list instance based on that content type. After deploying the sandbox solution, everything seemed to be there.
I have now realised that 2 of the columns shouldn't be in that list, as they will be in another list. So I removed the 2 fields from the content type, remove the 2 fields from the ListInstance, and the Schema.xml file.
After redeploying, I can see that the fields are no longer part of the content type, but when I view the list that is created the fields are still in there.
I have tried to delete the list manually, disable the feature, deactivate the solution and delete it, but when I redeploy from visual studio the list created still has them 2 columns in it.
If I create a new list instance (point and click) this list doesn't seem to have the 2 columns in them. I've also tried to change the code in the ListInstance elements file to create the list at a new URL, but this new list when deployed still has the extra two fields in it. It seems to be reading an old schema.
I have deployed my solution to a different farm and the columns are not showing there, so somewhere in my environment it is caching or storing the schema somewhere which isn't being properly deleted. Any one know what I need to do?