I'm currently a PhD student and not a prof, so my suggestion comes from my (limited) personal experience as a graduate student.
When I was an undergraduate student, I always worked as a research assistant in summer with different profs in my department. I personal believe that the only way to figure out if TCS is truly for you or not is to work on concrete problems and see what you can enjoy the most. It did take me quite a while to find a prof and a topic that I liked. There's also a "social" aspect in research, and different profs have different working and supervision habits, and thus these summer research jobs will give you a better idea what quality you want the most from a supervisor in the future.
There are many interesting fields in Computer Science, and TCS is just one of them. So it's always best to keep your options open and talk to different profs. It's very important to specialize when you're doing PhD, but as as an undergrad I think Mark Braverman's advice is extremely relevant:
" Try to learn as much as you can. [...] It is more difficult later on!"
[Mark tried to enroll in many courses (well above the limit), and explore different areas of Mathematics and Computer Science when he was an undergrad.] Try to attend lectures and seminars on different topics in your department. When you're in your upper years, you should also ask for permission to audit graduate courses related to your interest.
Also depending if you're majoring in Maths or CS, you also have to plan courses you should take to prepare you a solid basic foundation. If you're a Maths undergrad, then you should take more CS courses in algorithms and complexity which give you a more "algorithmic" mind. If you're a CS or Engineering undergrad, then it's always a good idea to learn some basic Maths courses in:
- Combinatorics
- Probability and Statistics
- Advanced Linear Algebra
- Abstract Algebra
- Analysis
It's true that you can never learn enough Maths, and that you should learn to pick up new Maths/methods/techniques fast whenever needed. But a solid background will definitely give you an easier start into TCS.
I wish you the best of luck and success!