I have 6 months to train for a swimming race (200m freestyle in a 50m outdoor pool). My level at the moment is beginner/intermediate, with fairly good technique. Should I focus on training longer distances, or sets of shorter distances, or a combination of the two? Or maybe even swim just sets of 200m at full speed? What would be a good workout schedule for my goal? My current time is around 3:30 and I need to lower it by about a minute.
This is a very tough question.
A few starting questions: 1) How is your starting block reaction time? 2) How many strokes is it taking you during one length of the pool? 3) How many breaths are you taking each length of the pool? 4) How are your turns?
Training for longer distances than 200 meters can only help your swimming endurance. However, you don't want to train solely or endurance because it will hurt your power for the short distance. You should, in fact, run several trials of the 200 at full speed. This will help you get to know your event better.
Outside of the pool you should do some strength training. Working your shoulder, chest, lats, quadricep, and hamstring muscles. (In all honesty you should train all of your muscles) You should also work on your flexibility. Having the extra length in your reach, or folding into your turn a little more will only help you.
There is a reason Olympic caliber athletes train in dedicated centers. They have access to highly specialized staff like physicists that specialize in sports that can help calculate maximum efficiency of diving angles, optimal depth for swimming, etc.
I hope someone can give you better workouts to do in the pool.
The biggest question is going to be time to train. 1 minute is quite a large chunk to shave off in six months. I am assuming that your 3:30 time is an all out sprint, which suggests that you have some stroke flaws that are costing you time as well.
I would be prepared to live in the pool for the next few months, 4-6 times per week with 2-3000m (or yards depending on your pool) per session. Ideally you want to be around 18,000 per week as an average, more if you can manage it. Many high school swimmers are in the 25-30,000 range per week, often more, and college/Olympic swimmers get up into the 10,000 per day range.
I would structure it along the lines of: Monday - Interval work Tuesday - Distance Wednesday - Threshold Thursday - Distance/threshold Friday - Interval Saturday - Distance Sunday - off.
On your interval days, I would spend a lot of time doing short distances (25-100m), at speeds faster than your 200m race pace. Threshold days, somewhat longer (100m-300m) at near race pace, and the distance days, 200-500m sets.
Along with that, every day I would have form drills (See below note), and kicking drills. Lots and lots of kicking drills. The shorter the race, the more the kick is important as a driving/propulsion force, and a well coordinated kick also drives breathing and stroke rotation, which will in turn increase the length of your reach, distance per stroke, etc.
One other aspect that is often overlooked is flip turns. With a 50m pool, there are only 3, but often you can make or lose significant ground in a flip turn depending on form. You need to be able to come into the wall, do your flip turn and then push off and dolphin kick away. You want to be able to come deep enough to get under the wave that follows you into the wall.
I would highly recommend a couple of sessions with a swim stroke instructor (not a coach), with the specific purpose of recommending form drills to work on any flaws. This will be worth months in the pool, and can shave off significant time. Have them look at your freestyle (Technically it's the Australian crawl) stroke, flip turns and dolphin kick.
If you are stuck for workouts, there are many internet sources available, and I highly recommend the "Swim workouts in a binder" series. Many good workouts, and it has a way to structure/time your threshold and interval workouts off of T (threshold) pace testing.
While training is important I suggest that if you want this significant (25%+) of a change in your times, and if you are only beginner/intermediate and going a 1:45 pace in that event, you probably have a long way to go with technique as well. A focus on skills and developing new habits will get you closer to your goal than reinforcing your current 1:45 style with increased training. The suggestions in other answers about improving turns, starts, distance per stroke, etc. are right on. For most of my swimmers who are at the level I expect you are, a focus on balance, rolling, front quadrant swimming, and keeping those skills at faster speeds and when tired will bring them to lifetime best times – in practice mind you – within a couple of months. It is important to utilize coaches/instructors who focus on skills first if you want to make such a significant change quickly.