The major areas where Visual Studio Express lacks features compared to Visual Studio Professional:
Some Win32 tools missing
No Team Explorer support
Limited refactoring support
Debugging is much more limited (particularly problematic for server development is no remote debugging)
Lack of support for setup projects
No report creation tools
No Office development support
No mobile platform support
Limited set of designers
Limited set of database tools
No code profiling or test framework support
No MFC/ATL support
No support for compiling C++ to 64-bit images (workaround is to install Windows SDK which is free)
Hmm, Good Question.....
Lets Consider what you want to develop...
1.) If you are developing applications in Native/ISO Standard, then the express edition will do just fine.
2.) You are developing Windows applications using the MFC Libraries - In that case it won't work because MFC isn't bundled with express editions.
3.) You are developing applications using the CLI implementation, will be fine for simple applications but you will be severly lacking in complex ones..
BOTTOM LINE: Use Express editions to learn the language, for serious development get Professional or above