The few programs that don't work as-is typically break because their installer expects to find a different edition of Windows than is being advertised (one of the reasons Windows 7 advertises itself as "Windows 6.1" to prospective programs). This can be worked around through the compatibility-mode functions, something that's existed since the XP days.
Linux's application roster is an entirely different case. By and large, the applications used on Linux aren't sold in stores -- they're typically repackaged and provided by the same folks who created whatever distribution you're using.
That said, the majority of applications delivered for Linux also have Windows builds. Cases in point: the Firefox web browser, the Pidgin instant-messaging application, or the OpenOffice suite. If you've been using any of these on Windows, you'll find they're much easier to use their Linux counterparts.
Now for a tougher question: What about using Windows-only applications on Linux? It's possible, and there is more than one approach to accomplishing that. First and most direct is Wine, an emulation layer that can be added to Linux which lets you run Windows programs directly in Linux.
Wine insures that Windows programs think they're on a native Windows box; it provides emulation for the Registry, the Windows disk structures, and the vast majority of Windows APIs. And Wine is robust enough at this point to allow even complex applications such as games to be run well.
That said, any application that can be replaced with a Linux counterpart should be -- but sometimes that simply isn't possible. It's the selection of apps that often form the biggest barrier to making the jump to Linux. Another issue may be the fact that while it's possible to install 7 on top of Vista and preserve one's applications and settings, it isn't yet possible to do this in Linux.
It is possible to automatically migrate documents and some fairly generic system settings -- Ubuntu does this, for instance -- but not the apps themselves. (For those planning on performing an entirely clean installation of either OS, though, it's a moot point.)
There's little reason to doubt that Win7, both 32- and 64-bit, will be showing up on plenty PCs near you later this year. Given how quickly both businesses and Microsoft want to move on from Vista, 7 is at the very least set to replace earlier versions of Windows with little trouble.
And Linux? The ever-mythical "year of the Linux desktop" always seems to be just around the corner, so wholesale displacement of Windows probably isn't happening.
But each successive wave of distributions is makes it easier and less disruptive to switch to Linux, or start there from scratch, if you have little existing investment in Windows.