The difference between caviar, tobiko, and ikura are that they are the roe (eggs) of different kinds of fish, which means they all have different tastes, textures, colors, and sizes. The most common difference, besides taste, is that you are more likely to find tobiko and ikura in Japanese restaurants and to find caviar in fine dining settings.
According to Wikipedia, "traditionally, the term caviar refers only to roe from wild sturgeon in the Caspian and Black Sea".
Most of the times I've seen caviar, it's been used as a garnish on top of a dish (so, you probably won't see people eating it by the spoonful). Visually, the eggs are small and black. Caviar can also refer to a class of fish eggs - there are different sizes of caviar depending on the fish it comes from. Most of the caviar I've seen is black.
Tobiko is flying fish roe. These are most commonly found in sushi restaurants. They're usually a red-orange color (not to be confused with masago, which are smaller and more brightly colored), but can also come in green, red, and black varieties. Tobiko is usually used as a garnish or can be ordered on its own. When you see "flying fish eggs" and don't see the Japanese name alongside it, you may get either tobiko or masago, depending on the restaurant.
Ikura is salmon roe. In Japanese cooking, ikura is one of the most popular. In general, there are two basic ways in which the salmon roe can be prepared. The individual eggs can be removed from the salmon and prepared and served separately, allowing a chef to control the number of eggs served; this is referred to as ikura. A preparer can also remove the entire pouch of eggs or roe from the salmon and keep them all together, called sujiko, often soaking it in a brine solution. Though brined,sujiko is often somewhat sweeter than the individual roe and a more vivid red in color.
If you're interested in fish roe, we have:
Seasoned Capelin Roe
Seasoned Spicy Capelin Roe Cube With Mayonnaise
Seasoned Flying Fish Roe