This seems be what you're after...
Using the caption package you can modify captions by removing the label separator. Additionally, I've redefined \caption so you only need to specify a single (mandatory) argument. (Edit: Moved redefinition to after \begin{document}.) oldcaption gives the default behavior of caption.
\documentclass{article}
\usepackage{caption}% http://ctan.org/pkg/caption
\usepackage{lipsum}% http://ctan.org/pkg/lipsum
\usepackage[demo]{graphicx}% http://ctan.org/pkg/graphicx
\usepackage{letltxmacro}% http://ctan.org/pkg/letltxmacro
\DeclareCaptionTextFormat{none}{} \captionsetup[figure]{labelsep=none,textformat=none}
\begin{document}
\tableofcontents
\listoffigures
\section{First section}
\lipsum[1]
\begin{figure}[ht]
\centering \includegraphics{image1}
\caption[Unused first legend]{This is a first legend}
\end{figure}
\lipsum[2]
\begin{table}[ht]
\caption[a, b, and c]{The first $3$ letters of the alphabet}
\centering
\begin{tabular}{lll}
\hline
a & b & c \\
\hline
\end{tabular}
\end{table}
\lipsum[1]
\begin{figure}[ht]
\centering \includegraphics{image2}
\caption[Unused second legend]{This is a second legend}
\end{figure}
\lipsum[3]
\end{document}

lipsum provides filler text, while the demo option to graphicx is just meant for this MWE example, since it doesn't have images included. Captions are just typeset as Figure <num>, while the actual figure caption is included in the "List of Figures".
\captioninside\AtBeginDocument. – Oct 05 '11 at 05:25\renewcommand{\caption}{...}to after\begin{document}. – Werner Oct 05 '11 at 05:29\captionand using\DeclareCaptionTextFormat{none}{} \captionsetup{labelsep=none,textformat=none}instead. – Oct 05 '11 at 05:30\renewcommandafter\begin{document}you should move the\LetLtxMacro, too. Otherwise your code will drop the redefinition of\captiondone by the caption package. – Oct 05 '11 at 05:59\caption[short caption]{long caption}, what wouldshort captionandlong captionbe used for? At the moment, I've completely disregardedshort captionand only putlong captionin the LoF. Where would you want to putshort caption? Or is it just so your original code can compile without problem, since that's easily fixable? – Werner Oct 05 '11 at 20:42renewcommand{\caption}[2][]{\oldcaption[#2]{}}which now allows for an optional first argument to\caption[..]{...}. It is not used at all in the document (it's discarded). – Werner Oct 05 '11 at 21:01textformat=empty, so\usepackagelabelsep=none,textformat=empty]{caption}should do the trick, too. – Oct 12 '11 at 16:25