I have recently started using Linux on my laptop and I really like it. Especially I am overwhelmed by the ability to customize the desktop environment in Linux. I start reading about it and I learned that you can replace the Windows shell in Windows 7 which I use on my desktop computer. However I was wondering would it affect my ability to run windows programs in any way? At the moment I use some Windows only programs that I need to run. Are there any downfalls of using custom shell on Windows?
Nope it won't because when you replace the "shell" in windows you're actually only replacing the UI and the user interface has nothing to do with the programmes you run.
I haven't done it since XP but the principle is the same, it's just a visual tweak.
It's not like Linux where the shell is like Windows over DOS and much more involved.
I expect that a replacement shell could cause problems, although most likely it will not cause many problems (and might not cause any noticeable problems). As an example, 4DOS was a new shell for the MS-DOS platform that pre-dated Windows 95. Compatibility was very high, but not absolute. For anything important, be sure to back up important data first and perform careful tests until you are satisfied that things keep working as expected.
Note that the "shell" in Windows refers to the user interface that interacts with the user, and so involves graphics. If you simply want an alternate command line prompt, you can install it and make an icon for it, and that is unlikely to affect many programs that are heavily graphical in nature.
Years ago, one reason to use an alternate shell was that an alternate shell may have fewer requirements of system resources. Since then, computers have become more powerful, enough that the system requirements of Microsoft's shell are typically met easily.
You may wish to consider whether shell replacement is needed. Back in the DOS days, it was a good idea because the default COMMAND.COM shell was pretty limited. With a new Windows shell, many of the changes can be done using add-ons rather than replacing Microsoft's shell. Such an approach may be less likely to break as Microsoft changes how Windows works (with newer releases of Windows). Even if you do decide to use a third party program which could be used as a shell, you may wish to check whether much of its functionality can be achieved by running the software from within the Windows shell, rather than replacing the Windows shell.