I tried a few suggestions from the net and ended mucking things up!
ALLWAYS BACKUP YOUR REGISTRY BEFORE MAKING CHANGES!
What SEEMS to work and I shall do in future is -
1) find the folder of the project I don't want in the list.
2) delete, move or rename it.
3) Try to launch it from the VB2008 start page
4) an error message will appear.
5) Choose to remove references to it from the list
There may be better ways, please let me know if you know of one. I offer no guarantees with this (I’m learning myself) but it seems to be safe.
The MRU list for VB Express 2008 is in path quoted, it's the same list used for Start page and in VS File menu for Recent Projects. Note that the full Visual Studio may have MRU management, but I have not found any in Express version.
It contains multiple ExpandString name-value pairs named File1, File2 etc. If you delete one you have to rename the others in sequence from 1 and up. In other words boring repetetive work it is better to let the computer do. Here is an example on how to work with these values, the code opens that key, reads the first file value unexpanded, writes the same value to a new "File99" ExpandString name-value pair:
Dim reg As RegistryKey = My.Computer.Registry.CurrentUser.OpenSubKey("Software\Microsoft\VBExpress\9.0\ProjectMRUList", True)
Dim value As String = CStr(reg.GetValue("File1", "", RegistryValueOptions.DoNotExpandEnvironmentNames))
reg.SetValue("File99", value, RegistryValueKind.ExpandString)
Now that you know how to read and write those values you can create an application that manages the whole MRU list, you have to use GetValueNames and design some UI where user can delete items (and perhaps reorder them?) while your app makes sure the File numbers is in sequence.