The simplest (and probably most efficient) way is simply to do it with two calls to Delete, first to delete two characters starting at 5 and then to delete two characters starting at 2. (If you start with 2 first, it shifts the indices for the remaining characters, as David pointed out in a comment to the question).
var
Source : string;
begin
Source := '12345678';
Delete(Source, 5, 2);
Delete(Source, 2, 2);
ShowMessage('Source now : '+Source);
end;
@JanLaundsen suggested in a comment to the question that you can also use Copy to do it in one line:
Source := Copy(Source, 1, 1) + Copy(Source, 4, 1) + Copy(Source, 7, MaxInt);
This solution works, but adds the overhead of three function calls (the calls to Copy) plus three temporary string allocations (one for the result of each call to Copy) that do not happen in the two line calls to Delete. (Saving a line of code isn't always the best solution). IMO, the two separate calls are also much easier to read, but that's a personal opinion. It may not be more readable to you.
Sourceone) that don't exist in the two-line solution. Saving a line of code isn't always the best solution.