Как-то это странно немного звучит: "очень хорошо выучил" в отношении языка программирования. Дело в том, что язык программирования мало "выучить", его надо уметь эффективно применять для решения конкретных задач. Т.е. техническое знание синтаксиса и конструкций языка и даже библиотек мало что дает без практического применения в конкретных проектах. Программирование - не столько наука, сколько ремесло и опыт тут не менее важен, чем знания, а то и поболее.
Так вот насчет выбора нового языка для изучения, стоит сначала определиться что именно вы хотите программировать, какой проект перед вами стоит, какие задачи вы хотите решать и т.д. И уже исходя из этого надо выбирать конкретный язык.
И тот и другой языки, работают с объектами, оба могут быть кроссплатформенными… Короче сходств довольно много. Главная разница заключается в том, что C# создает т.н. managed код, т.е. он выполняется не напрямую на процессоре, а на некоторой виртуальной машине, в то время как код C++ может быть выполенен непосредственно на процессоре. Отсюда плюсы и минусы: код, выполненный на C#, жрет производительность по сравнению с C++, но зато его легче перенести на другую платформу. Кроме того, C++, пожалуй, немного гибче, поскольку допускает не только создание прямого unmanaged кода, но и включает в себя C как подмножество, т.е. допускает программирование на относительно низком уровне, в то время как C# принципиально объектно-ориентированный. С другой стороны, C# считается более безопасным с той точки зрения, что в нем сложнее наделать ошибок.
Вот и выбирайте. C# - это по сути конкурент Java. Если вам для вашей задачи не важна большая гибкость и не напрягает менее производительный код, если предполагается, что код должен работать на разных платформах - видимо, лучше выбрать C#. Если же для задачи важнее быть "ближе к железу" и производительность кода или его гибкость существенна, то выбирайте C++. Еще, пожалуй, стоит упомянуть, что скорость разработки кода на C#, пожалуй, выше.