Luxembourg is a great place to drive. Roads are excellent, landscape is gorgeous, and gasoline is a lot cheaper for some reason than in the nearby countries.
To reach Vianden you may either take N7 north past Diekirch. If you are coming from Belgium, take the highway to Namur, and then N4 via Bastogne.
If you don't have a car, don't think that you can't make it to Vianden. It's a little bit of work and requires a bit of timing, but I think that it's worth it. First, take the train from Luxembourg city to Ettelbruck (about 45 min). Then from Ettelbruck, take a bus to Vianden. The bus ride to Vianden is about 30 min and is a very beautiful ride. I'm not sure about the cost since I used a train pass... by the way remember that the Benelux train pass also works for the bus ride to Vianden.
If you are planning this trip, ask the tourist information center at the train station for a timetable of the train and bus to Vianden. They will give you schedule of how to specifically get there.
Fuel in Luxembourg is taxed lower than in any other country surrounding it, so you can really save a couple of Euros when filling up your car here rather than in Germany or France. Example: I paid 96 Eurocents per litre Diesel at a time when it was 116 Eurocents in Germany, so roundabout 20 % cheaper.
If you want to get around Vianden just walk, you will find all you need by walking, it is a fun place and not big. Go there in the summer season and take the cable car, otherwise just walk!